如何使用python读取csv文件特定范围内的值?

2024-05-06 13:22:36 发布

您现在位置:Python中文网/ 问答频道 /正文

初学者编码器在这里,提前感谢

我想读取介于一个范围之间的csv文件的值。现在,我正在使用pandas的pd.read_csv,我希望我的输出与读取csv文件的样子相同。到目前为止,我得到的是:

x = pd.read_csv("pathfile", parse_dates=True, index_col="timestamp")
x_lower = 3
x_higher = 8

x_ideal = x[x <= x_higher and x_lower <= x]
print(x_ideal)

但是我一直得到ValueError(builtins.ValueError:序列的真值是不明确的。使用a.empty、a.bool()、a.item()、a.any()或a.all()。我可以使用以下代码获得x_以上和x_以下的范围:

x_ideal = x[x_lower <= x]

使用代码,x_以下的范围更高:

x_ideal = x[x <= x_higher]

我只是无法得到他们之间的距离。为了记录在案,我也尝试过类似的方法,这会引发同样的错误:

x_ideal = x[x_lower <= x <= x_higher]

一个例子是:

date,numerical value
Monday,0
Tuesday,1
Wednesday,2
Thursday,3
Friday,4
Saturday,8
Sunday,9
Monday,10
Tuesday,11
Wednesday,12
Thursday,4
Friday,7

1条回答
网友
1楼 · 发布于 2024-05-06 13:22:36

您可以在列numerical value上使用between,而不是在整个数据帧上使用between

x_lower = 3
x_higher = 8
x_ideal = x[x['numerical value'].between(x_lower, x_higher)]

输出:

>>> x_ideal
        date  numerical value
3   Thursday                3
4     Friday                4
5   Saturday                8
10  Thursday                4
11    Friday                7

要了解有关错误的更多信息,请按照此link阅读已接受的答案

相关问题 更多 >