我要使用python分析的文件夹中有许多csv文件。每个csv文件包含一组y和多个x值。例如,一个csv文件如下所示。 (所有csv文件的x和y数均相同)
y x1 x2 x3
1 0.5 0.1 2.0
2 1.0 0.2 3.0
3 2.5 0.7 0.5
4 0.4 1.2 0.1
5 0.2 4.0 9.0
6 1.2 5.0 0.2
我正在读取文件夹中的所有csv文件,并尝试读取y和x:
my_xlist=[x1,x2,x3] #these are string.
for file in myfiles:
my_y = []
my_x = []
with open('my_folder/'+file, 'r') as f:
data = csv.reader(f,delimiter=',')
for row in data:
my_y.append(float(row[0]))
my_x.append(float(row[1:len(my_xlist)])) #not sure about this line
当前,它按行读取x值。
期望的结果如下(x值按列读取):
my_y=[1,2,3,4,5,6]
my_x=([0.1,1.0,2.5,0.4,0.2,1.2], [0.1,0.2,0.7,1.2,4.0,5.0], [2.0,3.0,0.5,0.1,9.0,0.2])
你们中的任何人都可以帮助我阅读x的所有列吗?
答案 0 :(得分:0)
您可以尝试Pandas读取csv。熊猫读取csv make DataFrame对象,这对于进一步操作信息很有帮助。可能遵循以下代码将对您有所帮助。
import pandas as pd
import os
list_of_dataframe = []
for file in os.listdir("path/to/directory"):
temp = pd.read_csv(str("path/to/directory/" + file))
list_of_dataframe.append(temp)
df = pd.concat(list_of_dataframe) # This dataframe contains all information