zoukankan      html  css  js  c++  java
  • python有关csv文件的记录

    1、合并所有测试集和训练集的文件:

    使用cmd到所在盘下,输入copy *.CSV all_***.csv即可

    2、单独提取异常数据列作为csv文件:

    import csv
    import codecs
    #coding:utf-8
    with open("G:\data_release\train1.0\all_train.csv","rt",encoding="utf-8")as f:
    reader=csv.DictReader(f)
    column=[row['triggername'] for row in reader]
    file_name="G:\data_release\train1.0\triggername.csv"
    file_csv = codecs.open(file_name,'w+','utf-8')
    writer = csv.writer(file_csv, delimiter=' ', quotechar=' ', quoting=csv.QUOTE_MINIMAL)
    for data in column:
      writer.writerow(data)

    虽然可以写入,但是出现乱码原因应该为csv的BOM没有更改

    解决方法:将encoding='utf8'改为encoding='gb18030'

    但是打开文件发现并不是所有内容都在第一列,有一些出现第二列,原因是一句话里面出现了逗号

    解决方法:遍历列表将逗号改为空格

    i=0
    while i < len(column):
    column[i].replace(","," ")
    i+=1

    不知道怎么的不适合我用的csv文件,还在继续检查中

    3、删除一些字符,如果知道字符的位置可以在列表的基础上进行操作

    去除首部空格 line=line.lstrip()

    4、导入一个csv文件的时候   data = pd.read_csv('G:pytorchdata1.csv',encoding='utf-8')

    报错的内容是这样的:

    UnicodeDecodeError: 'utf-8' codec can't decode byte 0xc9 in position 0: invalid continuation byte 

    修改至data = pd.read_csv('F:data1.csv', encoding='unicode_escape',header=None,sep = ' ',error_bad_lines=False)也没有用

    删除整行重复项:

    from more_itertools import unique_everseen
    with open('F:data1.csv','r') as f, open('F:data2.csv','w') as out_file:
            out_file.writelines(unique_everseen(f))

    5、unexpected index是代码的缩进出现问题

    6、文本文件用rt,二进制文件用rb打开 

    with open("fer2013.csv", "rt", encoding="utf-8") as vsvfile:
         reader = csv.reader(vsvfile)
         rows = [row for row in reader]
               print(rows)

  • 相关阅读:
    【6】肿瘤胚系突变遗传分析及数据库使用
    【5】肿瘤DNA甲基化数据分析原理及流程
    【4】肿瘤转录组测序分析流程及相关软件
    【3】肿瘤基因组数据分析方法概述
    【2】肿瘤基因检测相关技术原理
    MySQL数据排序asc、desc
    python的数据类型
    Python minidom模块(DOM写入和解析XML)
    python基础----特性(property)、静态方法(staticmethod)、类方法(classmethod)、__str__的用法
    python os.path模块常用方法详解
  • 原文地址:https://www.cnblogs.com/0211ji/p/13211412.html
Copyright © 2011-2022 走看看