【发布时间】:2021-09-04 14:15:57
【问题描述】:
Look at the variations of code I tried here
我正在尝试使用 Pandas 过滤具有多个条件的行并创建一个仅包含这些行的新 csv 文件。我尝试了几种不同的方法,然后将这些尝试中的每一种都注释掉(有时为了简单起见,我只尝试了一个条件,但它仍然不起作用)。创建 csv 文件时,未应用过滤器。
This is my updated code 我让它适用于条件 #1,但我不确定如何添加/应用条件 #2。我尝试了很多不同的组合。我知道我放在链接图像中的代码不适用于应用第二个条件,因为我所做的只是分配变量,但尝试显示我尝试执行的所有方法似乎太麻烦了。这部分有什么提示吗?
df = pd.read_csv(excel_file_path)
#condition #1
is_report_period = (df["Report Period"]=="2015-2016") | \
(df["Report Period"]=="2016-2017") | \
(df["Report Period"]=="2017-2018") | \
(df["Report Period"]=="2018-2019")
#condition #2
is_zip_code = (df["Zip Code"]<"14800")
new_df = df[is_report_period]
【问题讨论】:
-
您没有将过滤器分配给新的数据框,而只是重新创建原始数据框。我在注释掉的代码中看到了一个
new_df变量,取消注释代码并使用new_df.to_csv(filename)或在进行过滤的代码前面添加df = -
谢谢@MichaelVine。我编辑了我的原始帖子并进行了更新。
-
欢迎来到 SO!请添加代码 sn-ps 而不是代码图像 :)
-
@whereelse 您可以使用 pastebin 粘贴代码并在问题中添加链接而不是图像
-
添加示例输入和所需输出也有助于查明错误! – @whereelse