如何从.CSV中调用特定列

问题描述 投票:0回答:1

我在一个.csv文件中调用,该文件中包含文本和数值的组合,这些值都按如下所示的值排序:

screenshot of .csv for clarity

当我尝试调用数据时,python给了我错误ValueError: could not convert string to float: '7/24/15 0:10'

有没有办法在这个csv中调用并省略特定的列?因为我收到第1列(日期)的错误,我可以调用数据但省略第1,6列(工作日),7(date_UTC)吗?同样,我怎么能省略任何其他可能具有在浮点数组中不起作用的值的列?

到目前为止,这是我的代码:

SummerCLfile = 'user/summer_clusters.csv'
Summer_CLdata = list( csv.reader( open( SummerCLfile ) ) )
Summer_CLheaders = np.array( Summer_CLdata[ 0 ] [ : ], dtype = 'str' )
Summer_CLalldata = np.array( Summer_CLdata[ 1: ], dtype = 'float32' )

然后按类型调用这些数据(即调用'X',它给出了给定时间X的所有值)。

我总是可以进入数据并删除我不想要的列,但如果我可以调用无法转换为float32的数据,我的生活会更容易

python csv numpy numpy-ndarray
1个回答
0
投票

如果要将每列分配到列表,则可以随时从列中调用特定列或特定项。你也可以忽略任何你不需要的东西。

with open('my_file.csv', 'r') as f:
    global date, year, month, day, weekday, date_UTC, timewave, x, y 
    date, year, month, day, weekday, date_UTC, timewave, x, y = zip(*(row for row in csv.reader(f)))`
© www.soinside.com 2019 - 2024. All rights reserved.