精华内容
下载资源
问答
  • CSV格式

    千次阅读 2018-07-05 11:44:00
    一、什么是CSV格式文件 逗号分隔值(Comma-Separated Values,CSV),其文件以纯文本形式存储表格数据(数字和文本),文件的每一行都是一个数据记录。每个记录由一个或多个字段组成,用逗号分隔。使用逗号作为字段...

    一、什么是CSV格式文件

            逗号分隔值(Comma-Separated Values,CSV),其文件以纯文本形式存储表格数据(数字和文本),文件的每一行都是一个数据记录。每个记录由一个或多个字段组成,用逗号分隔。使用逗号作为字段分隔符是此文件格式的名称的来源,因为分隔字符也可以不是逗号,有时也称为字符分隔值。

            CSV广泛用于不同体系结构的应用程序之间交换数据表格信息,解决不兼容数据格式的互通问题,一般按照传输双方既定标准进行格式定义,而其本身并无明确格式标准。

            CSV泛指满足以下条件的文件:

    • 纯文本,使用某个字符集,比如ASCII、Unicode、EBCDIC或GB2312;
    • 由记录组成(典型的是每行一条记录);
    • 每条记录被分隔符分隔为字段(典型分隔符有逗号、分号或制表符;有时分隔符可以包括可选的空格);
    • 每条记录都有同样的字段序列。

    二、CSV的格式规范

    1. 每一行记录位于一个单独的行上,用回车换行符CRLF(也就是\r\n)分割。

    2. 文件中的最后一行记录可以有结尾回车换行符,也可以没有

    3. 第一行可以存在一个可选的标题头,格式和普通记录行的格式一样。标题头要包含文件记录字段对应的名称,应该有和记录字段一样的数量。(在MIME类型中,标题头行的存在与否可以通过MIME type中的可选”header”参数指明)

    4. 在标题头行和普通行每行记录中,会存在一个或多个由半角逗号(,)分隔的字段。整个文件中每行应包含相同数量的字段,空格也是字段的一部分,不应被忽略。每一行记录最后一个字段后不能跟逗号。(通常用逗号分隔,也有其他字符分隔的CSV,需事先约定)

    5. 每个字段可用也可不用半角双引号(“)括起来(不过有些程序,如Microsoft的Excel就根本不用双引号)。如果字段没有用引号括起来,那么该字段内部不能出现双引号字符。

    6. 字段中若包含回车换行符、双引号或者逗号,该字段需要用双引号括起来。

    7. 如果用双引号括字段,那么出现在字段内的双引号前必须加一个双引号进行转义。


    展开全文
  • Python操作CSV格式文件

    万次阅读 多人点赞 2018-01-16 19:27:25
    (一)CSV格式文件 1.说明 CSV是一种以逗号分隔数值的文件类型,在数据库或电子表格中,常见的导入导出文件格式就是CSV格式CSV格式存储数据通常以纯文本的方式存数数据表。 (二)CSV库操作csv格式文本 操作...

    (一)CSV格式文件

    1.说明

    CSV是一种以逗号分隔数值的文件类型,在数据库或电子表格中,常见的导入导出文件格式就是CSV格式,CSV格式存储数据通常以纯文本的方式存数数据表。

    (二)CSV库操作csv格式文本

    操作一下表格数据:
    这里写图片描述

    1.读取表头的2中方式

    #方式一
    import csv
    with open("D:\\test.csv") as f:
        reader = csv.reader(f)
        rows=[row for row in  reader]
        print(rows[0])
    
    
    ----------
    #方式二
    import csv
    with open("D:\\test.csv") as f:
        #1.创建阅读器对象
        reader = csv.reader(f)
        #2.读取文件第一行数据
        head_row=next(reader)
        print(head_row)
    
    
    结果演示:['姓名', '年龄', '职业', '家庭地址', '工资']
    

    2.读取文件某一列数据

    #1.获取文件某一列数据
    import csv
    with open("D:\\test.csv") as f:
        reader = csv.reader(f)
        column=[row[0] for row in  reader]
        print(column)
    
    
    结果演示:['姓名', '张三', '李四', '王五', 'Kaina']
    

    3.向csv文件中写入数据

    #1.向csv文件中写入数据
    import csv
    with open("D:\\test.csv",'a') as f:
         row=['曹操','23','学生','黑龙江','5000']
         write=csv.writer(f)
         write.writerow(row)
         print("写入完毕!")
    

    结果演示:
    这里写图片描述


    4.获取文件头及其索引

    import csv
    with open("D:\\test.csv") as f:
        #1.创建阅读器对象
        reader = csv.reader(f)
        #2.读取文件第一行数据
        head_row=next(reader)
        print(head_row)
        #4.获取文件头及其索引
        for index,column_header in enumerate(head_row):
            print(index,column_header)
    
    结果演示:
    ['姓名', '年龄', '职业', '家庭地址', '工资']
    0 姓名
    1 年龄
    2 职业
    3 家庭地址
    4 工资
    
    

    5.获取某列的最大值

    # ['姓名', '年龄', '职业', '家庭地址', '工资']
    import csv
    with open("D:\\test.csv") as f:
        reader = csv.reader(f)
        header_row=next(reader)
        # print(header_row)
        salary=[]
        for row in reader:
            #把第五列数据保存到列表salary中
             salary.append(int(row[4]))
        print(salary)
        print("员工最高工资为:"+str(max(salary)))
    
    
    结果演示:员工最高工资为:10000
    

    6.复制CSV格式文件

    原文件test.csv
    这里写图片描述


    import csv
    f=open('test.csv')
    #1.newline=''消除空格行
    aim_file=open('Aim.csv','w',newline='')
    write=csv.writer(aim_file)
    reader=csv.reader(f)
    rows=[row for row in reader]
    #2.遍历rows列表
    for row in rows:
        #3.把每一行写到Aim.csv中
        write.writerow(row)
    

    01.未添加关键字参数newline=’ '的结果:
    这里写图片描述


    02添加关键字参数newline=’ '的Aim.csv文件的内容:
    这里写图片描述


    (三)pandas库操作CSV文件

    csv文件内容:
    这里写图片描述

    1.安装pandas库:pip install pandas

    2.读取csv文件所有数据

     import pandas as pd
    path= 'D:\\test.csv'
    with open(path)as file:
        data=pd.read_csv(file)
        print(data)
    
    
    结果演示:
          姓名  年龄   职业  家庭地址     工资
    0     张三  22   厨师   北京市   6000
    1     李四  26  摄影师  湖南长沙   8000
    2     王五  28  程序员    深圳  10000
    3  Kaina  22   学生   黑龙江   2000
    4     曹操  28   销售    上海   6000
    

    3.describe()方法数据统计

    import pandas as pd
    path= 'D:\\test.csv'
    with open(path)as file:
        data=pd.read_csv(file)
        #了解更多describe()知识,ctr+鼠标左键
        print(data.describe())
    
    
    结果演示:
                 年龄            工资
    count   5.00000      5.000000
    mean   25.20000   6400.000000
    std     3.03315   2966.479395
    min    22.00000   2000.000000
    25%    22.00000   6000.000000
    50%    26.00000   6000.000000
    75%    28.00000   8000.000000
    max    28.00000  10000.000000
    
    

    4.读取文件前几行数据

    import pandas as pd
    path= 'D:\\test.csv'
    with open(path)as file:
        data=pd.read_csv(file)
        #读取前2行数据
        # head_datas = data.head(0)
        head_datas=data.head(2)
        print(head_datas)
    
    
    
    结果演示:
       姓名  年龄   职业  家庭地址    工资
    0  张三  22   厨师   北京市  6000
    1  李四  26  摄影师  湖南长沙  8000
    

    5.读取某一行所有数据

    import pandas as pd
    path= 'D:\\test.csv'
    with open(path)as file:
        data=pd.read_csv(file)
        #读取第一行所有数据
        print(data.ix[0,])
    
    
    
    结果演示:
    姓名        张三
    年龄        22
    职业        厨师
    家庭地址     北京市
    工资      6000
    

    6.读取某几行的数据

    import pandas as pd
    path= 'D:\\test.csv'
    with open(path)as file:
        data=pd.read_csv(file)
        #读取第一行、第二行、第四行的所有数据
        print(data.ix[[0,1,3],:])
    
    
    
    结果演示:
          姓名  年龄   职业  家庭地址    工资
    0     张三  22   厨师   北京市  6000
    1     李四  26  摄影师  湖南长沙  8000
    3  Kaina  22   学生   黑龙江  2000
    

    7.读取所有行和列数据

    import pandas as pd
    path= 'D:\\test.csv'
    with open(path)as file:
        data=pd.read_csv(file)
        #读取所有行和列数据
        print(data.ix[:,:])
    
    
    结果演示:
          姓名  年龄   职业  家庭地址     工资
    0     张三  22   厨师   北京市   6000
    1     李四  26  摄影师  湖南长沙   8000
    2     王五  28  程序员    深圳  10000
    3  Kaina  22   学生   黑龙江   2000
    4     曹操  28   销售    上海   6000
    

    8.读取某一列的所有行数据

    import pandas as pd
    path= 'D:\\test.csv'
    with open(path)as file:
        data=pd.read_csv(file)
        # print(data.ix[:, 4])
        print(data.ix[:,'工资'])
    
    结果演示:
    0     6000
    1     8000
    2    10000
    3     2000
    4     6000
    Name: 工资, dtype: int64
    

    9.读取某几列的某几行

    import pandas as pd
    path= 'D:\\test.csv'
    with open(path)as file:
        data=pd.read_csv(file)
        print(data.ix[[0,1,3],['姓名','职业','工资']])
    
    结果演示:
          姓名   职业    工资
    0     张三   厨师  6000
    1     李四  摄影师  8000
    3  Kaina   学生  2000
    

    10.读取某一行和某一列对应的数据

    import pandas as pd
    path= 'D:\\test.csv'
    with open(path)as file:
        data=pd.read_csv(file)
        #读取第三行的第三列
        print("职业---"+data.ix[2,2])
    
    
    结果演示:职业---程序员
    

    11.CSV数据的导入导出(复制CSV文件)

    读方式01:

    import pandas as pd
    #1.读入数据
    data=pd.read_csv(file)
    

    写出数据02:

    import pandas as pd
    #1.写出数据,目标文件是Aim.csv
    data.to_csv('Aim.csv')
    

    其他:

    01.读取网络数据:
    import pandas as pd 
    data_url = "https://raw.githubusercontent.com/mwaskom/seaborn-data/master/tips.csv"
    #填写url读取
    df = pd.read_csv(data_url)
    
    
    ----------
    02.读取excel文件数据
    import pandas as pd 
    data = pd.read_excel(filepath)
    
    

    实例演示:

    1.test.csv原文件内容
    这里写图片描述


    2.现在把test.csv中的内容复制到Aim.csv中

    import pandas as pd
    file=open('test.csv')
    #1.读取file中的数据
    data=pd.read_csv(file)
    #2.把data写到目标文件Aim.csv中
    data.to_csv('Aim.csv')
    print(data)
    
    

    结果演示:
    这里写图片描述


    注:pandas模块处理Excel文件和处理CSV文件差不多!

    参考文档:https://docs.python.org/3.6/library/csv.html

    学习视频:https://www.365yg.com/a6449129169518330382

    展开全文
  • Excel和CSV格式文件的不同之处

    万次阅读 多人点赞 2017-12-03 22:34:21
    Excel和CSV格式文件的不同之处 来源:https://www.guru99.com/excel-vs-csv.html Excel CSV 这是一个二进制文件,它保存有关工作簿中所有工作表的信息 CSV代表CommaSeparatedValues。这是一个纯...

    Excel和CSV格式文件的不同之处
    来源:https://www.guru99.com/excel-vs-csv.html

     

     

     

    Excel

    CSV

    • 这是一个二进制文件,它保存有关工作簿中所有工作表的信息
    • CSV代表Comma Separated Values 。这是一个纯文本格式,用逗号分隔一系列值
    • Excel不仅可以存储数据,还可以对数据进行操作
    • CSV文件只是一个文本文件,它存储数据,但不包含格式,公式,宏等。它也被称为平面文件
    • Excel是一个电子表格,将文件保存为自己的专有格式,即xls或xlsx
    • CSV是将表格信息保存为扩展名为.csv的分隔文本文件的格式
    • 保存在excel中的文件不能被文本编辑器打开或编辑
    • CSV文件可以通过文本编辑器(如记事本)打开或编辑
    • 在数据仓库中,对于详细的标准化模式规范来说,Excel是最好的
    • 在数据仓库中,CSV遵循相当平坦,简单的模式
    • 任何用于解析Excel数据的编程语言库通常都会更大,更慢,更复杂
    • 任何编程语言来解析CSV数据是微不足道的,生成它是非常容易的
    • 由于数值和文本之间没有明确的区别或区分,Excel可以使用自动格式化功能搞乱您的邮政编码和信用卡号码
    • CSV是安全的,可以清楚地区分数值和文本。CSV不处理数据并按原样存储。
    • 在Excel中,必须为每一行中的每一列都有一个开始标记和结束标记
    • 在CSV中,只能编写一次列标题
    • Excel导入数据时消耗更多的内存
    • 导入CSV文件可以更快,而且消耗更少的内存
    • 在Excel中读取大文件的用户在END中更容易。此外,您还可以使用其他功能,例如选择要导入的单个单元格,自动转换日期和时间,读取公式及其结果,过滤器,排序等。
    • 以CSV格式读取大文件不会像最终用户的Excel文件那样简单
    • 除了文本,数据也可以以图表和图表的形式存储
    • 每条记录都存储为一行文本文件,每一条新行都表示一个新的数据库行。CSV不能存储图表或图形
    • Excel文件只能用Microsoft Excel文档打开
    • CSV可以用Windows中的任何文本编辑器打开,如记事本,MS Excel,Microsoft Works 9等
    • Excel可以连接到外部数据源来获取数据。您可以使用Excel中的自定义加载项来增加其功能。Excel允许使用详细的跟踪和评论功能查看数据。
    • 所有这些功能在CSV中都是不可能的
    • 作为开发人员,由于Excel是专有的,因此很难以编程方式操纵Excel文件。.NET以外的其他语言尤其如此
    • 作为开发人员,以编程方式操作CSV很容易,因为毕竟它们是简单的文本文件。

     

     

     

     

    展开全文
  • 易语言CSV格式导入源码,CSV格式导入,LVMTOCSV
  • 此文件为Python 123 平台 Python语言程序设计 练习7:文件与数据格式化的CSV格式数据清洗附件
  • 批量XLS格式转为CSV格式工具
  • csv格式转mat.m

    2019-05-31 12:19:10
    基于MATLAB的代码,将csv格式数据转mat格式数据; 基于MATLAB的代码,将csv格式数据转mat格式数据
  • csv.js导出csv格式文件

    2016-01-05 20:09:24
    csv.js导出csv格式文件 CSV.js 是一个简单,超快的用于 CSV 解析和编码的 JavaScript 工具库,兼容浏览器,AMD 和 NodeJS 环境。
  • 点云txt格式转csv格式

    2019-03-06 10:40:33
    点云txt格式转csv格式,这是Python代码,自己修改一下输入路径就可以使用了,如果使用过程中有问题的话,可以在下面留言,我看到了会回答大家的。
  • MNIST数据集及其csv格式 下载即可使用 希望可以帮到你们 MNIST数据集及其csv格式 MNIST数据集及其csv格式
  • 鸢尾花数据集的CSV格式,带有header,各位需要的下载就行
  • CSV编辑器,完美保存CSV格式,某些网站所需的CSV格式用excel编辑时不支持,就可以用这一款编辑器
  • csv格式文件是一种类似于excel的文件格式 asc格式文件是一种可以用text打开的文本文件 csv转asc本来可以用arcgis顺利完成,但由于csv数据量太大(744万行),arcgis处理不了如此大的文本,所以需要通过写代码实现...
  • 此数据集包括arff格式和csv格式,有需要的可以进行下载
  • CSV格式 使用Paparse的小js脚本将csv格式化为精确的html格式
  • 批量转换DBF格式文件为CSV格式文件
  • 中国行政区划的csv格式数据, 在将Mysql中的aras数据导入Sqlite3数据库时,可使用该csv格式的数据,也可自行从Mysql中导出csv文件,再导入Sqlite3数据库。
  • Atitit 命令行返回 cli 返回解析 tab分割csv格式 v4 t34.docx Atitit 命令行返回 cli 返回解析 csv 格式 cliutil 目录 1.1. 线使用tab.pdf
  • java 操作csv格式的文件-javacsv.jar.pdf
  • 主要介绍了JavaScript将数组转换成CSV格式的方法,实例分析了javascript使用valueOf方法将数组值转换为csv格式字符串的技巧,非常具有实用价值,需要的朋友可以参考下
  • beijing_20200101-20200307 CSV格式的天气数据
  • Oracle导入CSV格式数据

    2014-05-13 09:54:57
    Oracle导入CSV格式数据
  • 鸢尾花csv格式数据集,Iris也称鸢尾花卉数据集,是一类多重变量分析的数据集。 通过花萼长度、宽度、长度、宽度4个属性预测鸢尾花卉属于哪一类。 数据无空格
  • 波士顿房价数据集,csv格式,还有data格式的。我看别的CSDN用户提供下载,要的积分太多,太贵。所以我又传一遍,价格便宜点
  • ZET-CSV是用于csv格式的C ++库。 ZET-CSV使用STL库。 接口CSV容器类似于接口std :: vector。 您可以通过重写Makefile将ZET-CSV(而不是库)与代码一起使用。 ZET-CSV包含以下csv扩展名:行中不同数量的列,文字\ r,...
  • 我的数据: 6.1101,17.592 5.5277,9.1302 8.5186,13.662 ...若格式为txt,则先转为Csv格式: # coding=utf-8 import csv #要保存后csv格式的文件名 file_name_string="file.csv" with ...

    我的数据:
    6.1101,17.592
    5.5277,9.1302
    8.5186,13.662
    7.0032,11.854
    5.8598,6.8233
    8.3829,11.886
    7.4764,4.3483

    若格式为txt,则先转为Csv格式:

    # coding=utf-8
    import csv
    #要保存后csv格式的文件名
    file_name_string="file.csv"
    with open(file_name_string, 'wb') as csvfile:
        #编码风格,默认为excel方式,也就是逗号(,)分隔
        spamwriter = csv.writer(csvfile, dialect='excel')
        # 读取txt文件,每行按逗号分割提取数据
        with open('ex1data1.txt', 'rb') as file_txt:
            for line in file_txt:
                line_datas= line.strip('\n').split(',')
                spamwriter.writerow(line_datas)
    

    得到file.csv文件,其中ex1data1.txt为原数据,file.csv为转化后的csv数据:

     

    image.png

    读取Csv格式数据:

    # coding=utf-8
    import tensorflow as tf
    import os
    import csv
    #要保存后csv格式的文件名
    file_name_string="file.csv"
    filename_queue = tf.train.string_input_producer([file_name_string])
    #每次一行
    reader = tf.TextLineReader()
    key,value = reader.read(filename_queue)
    record_defaults = [[1.0], [1.0]] # 这里的数据类型决定了读取的数据类型,而且必须是list形式
    col1, col2 = tf.decode_csv(value, record_defaults=record_defaults) # 解析出的每一个属性都是rank为0的标量
    with tf.Session() as sess:
        #线程协调器
        coord = tf.train.Coordinator()
        #启动线程
        threads = tf.train.start_queue_runners(coord=coord)
        is_second_read=0
        line1_name='%s:1' % file_name_string
        print line1_name
        while True:
           #x_第一个数据,y_第二个数据,dline_key中保存当前读取的行号
            x_, y_,line_key = sess.run([col1, col2,key])
            
           #若当前line_key第二次等于第一行的key(即line1_name)则说明读取完,跳出循环
            if is_second_read==0 and line_key==line1_name:
                is_second_read=1
            elif is_second_read==1 and line_key==line1_name:
                break
            print (x_,y_,line_key)
        #循环结束后,请求关闭所有线程
        coord.request_stop()
        coord.join(threads)
        sess.close()
    

    输出结果:

     

    image.png

    官网参考:地址

     

    Iris数据集CSV格式文件读取:

    import tensorflow as tf
    
    sess = tf.Session()
    file_name_string = ["iris.csv"]
    # 创建一个文件名队列对象与我们将要使用的文件列表
    filename_queue = tf.train.string_input_producer(file_name_string, shuffle=False)
    # 创建一个读取器
    reader = tf.TextLineReader(skip_header_lines=1)
    # 解码CSV文件列
    key, value = reader.read(filename_queue)
    record_defaults = [[0.], [0.], [0.], [0.], [""]]
    # 将CSV文件转为 tensor , 每一列一个tensor
    col1, col2, col3, col4, col5 = tf.decode_csv(value, record_defaults=record_defaults)
    features = tf.stack([col1, col2, col3, col4])
    
    tf.initialize_all_variables().run(session=sess)
    coord = tf.train.Coordinator()
    threads = tf.train.start_queue_runners(coord=coord, sess=sess)
    
    for iteration in range(0, 5):
        example = sess.run([features])
        print(example)
        coord.request_stop()
        coord.join(threads)
    
    
    
    
    
    
    
    
    
    


     

    展开全文
  • MNIST数据集CSV格式

    2018-09-29 09:33:11
    手写数字识别所需要的MNIST数据集,已经转换为CSV格式,可以直接使用

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 134,981
精华内容 53,992
关键字:

csv格式