用python读CSV表格的方法
这篇文章主要介绍用python读CSV表格的方法,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
用python读CSV表格的方法:
1、使用PythonI/O读取csv文件
使用python I/O方法进行读取时即是新建一个List 列表然后按照先行后列的顺序(类似C语言中的二维数组)将数据存进空的List对象中,如果需要将其转化为numpy 数组也可以使用np.array(List name)进行对象之间的转化。
birth_data=[]withopen(birth_weight_file)ascsvfile:csv_reader=csv.reader(csvfile)#使用csv.reader读取csvfile中的文件birth_header=next(csv_reader)#读取第一行每一列的标题forrowincsv_reader:#将csv文件中的数据保存到birth_data中birth_data.append(row)birth_data=[[float(x)forxinrow]forrowinbirth_data]#将数据从string形式转换为float形式birth_data=np.array(birth_data)#将list数组转化成array数组便于查看数据结构birth_header=np.array(birth_header)print(birth_data.shape)#利用.shape查看结构。print(birth_header.shape)##(189,9)#(9,)
2、使用Pandas读取CSV文件
importpandasaspdcsv_data=pd.read_csv('birth_weight.csv')#读取训练数据print(csv_data.shape)#(189,9)N=5csv_batch_data=csv_data.tail(N)#取后5条数据print(csv_batch_data.shape)#(5,9)train_batch_data=csv_batch_data[list(range(3,6))]#取这20条数据的3到5列值(索引从0开始)print(train_batch_data)#RACESMOKEPTL#1840.00.00.0#1850.00.01.0#1860.01.00.0#1870.00.00.0#1880.00.01.0
3、使用Tensorflow读取CSV文件
'''使用Tensorflow读取csv数据'''filename='birth_weight.csv'file_queue=tf.train.string_input_producer([filename])#设置文件名队列,这样做能够批量读取文件夹中的文件reader=tf.TextLineReader(skip_header_lines=1)#使用tensorflow文本行阅读器,并且设置忽略第一行key,value=reader.read(file_queue)defaults=[[0.],[0.],[0.],[0.],[0.],[0.],[0.],[0.],[0.]]#设置列属性的数据格式LOW,AGE,LWT,RACE,SMOKE,PTL,HT,UI,BWT=tf.decode_csv(value,defaults)#将读取的数据编码为我们设置的默认格式vertor_example=tf.stack([AGE,LWT,RACE,SMOKE,PTL,HT,UI])#读取得到的中间7列属性为训练特征vertor_label=tf.stack([BWT])#读取得到的BWT值表示训练标签#用于给取出的数据添加上batch_size维度,以批处理的方式读出数据。可以设置批处理数据大小,是否重复读取数据,容量大小,队列末尾大小,读取线程等属性。example_batch,label_batch=tf.train.shuffle_batch([vertor_example,vertor_label],batch_size=10,capacity=100,min_after_dequeue=10)#初始化Sessionwithtf.Session()assess:coord=tf.train.Coordinator()#线程管理器threads=tf.train.start_queue_runners(coord=coord)print(sess.run(tf.shape(example_batch)))#[107]print(sess.run(tf.shape(label_batch)))#[101]print(sess.run(example_batch)[3])#[19.91.0.1.1.0.1.]coord.request_stop()coord.join(threads)'''对于使用所有Tensorflow的I/O操作来说开启和关闭线程管理器都是必要的操作withtf.Session()assess:coord=tf.train.Coordinator()#线程管理器threads=tf.train.start_queue_runners(coord=coord)#Yourcodehere~coord.request_stop()coord.join(threads)'''
以上是用python读CSV表格的方法的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注亿速云行业资讯频道!
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。