【发布时间】:2020-05-11 00:41:02
【问题描述】:
我有一个名为 key_resp_5_rt 的列,我想在其中删除任何低于 300 毫秒的行(这是一个反应时间列)
for filename in files:
try:
df=pd.read_csv(filename)
df['key_resp_5.rt']
谁能告诉我下面的代码是否可以删除 rt 小于 0.3 秒的行?
df[df['key_resp_5.rt'] > 0.3]
当我事后检查值低于 0.3 的行仍然存在时,我不知道为什么
【问题讨论】:
-
key_resp_5.rt(print(df.dtypes)) 的数据类型是什么?一种猜测是它是一个字符串,而不是一个浮点数。您还必须将结果分配回原始数据框:df = df[[...]] -
基本上 pandas 数据帧是不可变的,因此您需要再次分配 df
df = df[df['key_resp_5.rt'] > 0.3] -
@nickthefreak 或者分配给一个新变量。
标签: python python-3.x pandas