读csv
使用pandas读取
1
2
3
4
5
6
7
8
9
|
import pandas as pd import csv if name = = '__main__' : # header=0——表示csv文件的第一行默认为dataframe数据的行名称, # index_col=0——表示使用第0列作为dataframe的行索引, # squeeze=true——表示如果文件只包含一列,则返回一个序列。 file_dataframe = pd.read_csv( '../datasets/data_new_2/csv_file_name.csv' , header = 0 , index_col = 0 , squeeze = true) # 结果: |
# 当参数index_col=false 时,自动生成行索引0到n
# csv数据:
1
2
3
4
5
6
7
8
9
|
data_1 = [] # 读取行索引一样的数据,保存为list try : # 行索引为i的数据有多行,列为'pre_star' data_1.extend(file_dataframe .loc[i][ 'pre_star' ].values.astype( float )) except attributeerror: # 行索引为i的数据只有单行, data_1.extend([file_dataframe .loc[i][ 'pre_star' ]]) # 多行结果 |
# 行索引为i的数据只有一行时,不能对file_dataframe .loc[i]['pre_star']使用.values,否则会报错:
写csv
使用csv写
1
2
3
4
5
6
7
|
stu1 = [lid, k, pre_count_data[k]] # 打开文件,写模式为追加'a' out = open ( '../results/write_file.csv' , 'a' , newline = '') # 设定写入模式 csv_write = csv.writer(out, dialect = 'excel' ) # 写入具体内容 csv_write.writerow(stu1) |
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。
原文链接:https://segmentfault.com/a/1190000018671017