csv文件的读取与写入
1、csv文件的读取
import pandas as pd
csv_path = './dataA1.csv'
df = pd.read_csv(csv_path)
# 可以通过csv文件的表头读取出某一列,表头见下图
print('item_id列前5行内容:')
print(df['item_id'][0:5])
# 或者通过转化为array数组,通过下表索引读取
data = np.array(df)
print('读取前5行:')
print(data[0:5, :])
print(data.shape)
运行效果:
2、读取CSV文件表头、读取无表头csv文件
pd.read_csv默认不读取csv文件的第一行。
对于无表头csv文件可能丢失第一行数据,处理方法:header = None
csv_path = './A/dataA1.csv'
df = np.array(pd.read_csv(csv_path, header=None))
print(df[0])
运行效果:
3、csv文件的写入,以及设置表头
data = np.array([1,3,4,5],[2,3,4,5],[3,5,2,4])
head = 'line1,line2,line3' # 设置csv文件表头
csv_save_path = './csv_save.csv'
np.savetxt(csv_save_path, data, fmt="%s", delimiter=',', header=head)
运行结果:
4、存入的csv文件表头含有#号(如上图),表示csv文件表头文件的注释符号是#
去掉#号处理方式:comment = ‘’
data = np.array([[1,3,4,5],[2,3,4,5],[3,5,2,4]])
head = 'line1,line2,line3,line4' # 设置csv文件表头
csv_save_path = './csv_save.csv'
np.savetxt(csv_save_path, data, fmt="%s", delimiter=',', header=head,comments='')
运行效果
5、其他参数
np.savetxt()中的默认fmt参数是'%.18e',它适用于数字(整数/浮点数)。
如果想保存字符串,则需要将fmt参数更改为'%s'