Python读取csv文件的几种方法

2023-04-22 11:51:24 fuzzy

有时候数据是以csv形式存储的,要处理数据我们需要先进行读取操作。这里我总结了几种csv的读取方法(基于python)。


1.利用numpy读取

import numpy as np

data = np.loadtxt(open("路径.csv","rb"),delimiter=",",skiprows=n,usecols=[2,3]) 

delimiter是分隔符,skiprows是跳过前n行,usecols是使用的列数,例子中读取的是3,4列。


2.利用pandas读取

import pandas as pd

data = pd.read_csv(r'C:\Users\lenovo\Desktop\parttest.csv',sep=',',header='infer',usecols=[5])

同样地,sep相当于上面的delimiter,是分隔符。而这个函数中也包含delimiter,它属于备用的分隔符(csv用不同的分隔符分隔数据)。header是列名,是每一列的名字,如果header=1,将会以第二行作为列名,读取第二行以下的数据。usecols同上,是读取第几列。


值得注意的是,例如,我们查看某个值,print(data[1]),是会报错的。我们可以借由下面程序。


array=data.values[0::,0::]  #读取全部行,全部列

print(array[])              #array是数组形式存储,顺序与data读取的数据顺序格式相同

3.利用Python I/O读取文件

import csv

 

filename='C:\\Users\\lenovo\\Desktop\\parttest.csv'

data = []

with open(filename) as csvfile:

    csv_reader = csv.reader(csvfile)  # 使用csv.reader读取csvfile中的文件

    #header = next(csv_reader)        # 读取第一行每一列的标题

    for row in csv_reader:            # 将csv 文件中的数据保存到data中

        data.append(row[5])           # 选择某一列加入到data数组中

    print(data)

或者使用DictReader,第一行即作为标签。


import csv

 

with open(filename) as csvfile:

    reader = csv.DictReader(csvfile)

    column = [row['weight'] for row in reader]   # weight 同列的数据

print(column)

还有其他的方法,这里也不再补充。 



————————————————

版权声明:本文为CSDN博主「domoNaruto」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/domoNaruto/article/details/81193281


首页
应用
追剧
资讯
联系