我请求您帮助使用 Pandas 使用两个过滤器从 csv 中删除一行。
import pandas as pd
moving = pd.read_csv('C:/Users/Salesdata.csv')
df = pd.DataFrame(moving)
df = df[df['Last Name, First Name'] != 'Reid, Mark and Connie' & df['Actual Sale Date'] == 3/8/2015]
df.to_csv('improvedcsv.csv', index=False)
Run Code Online (Sandbox Code Playgroud)
我的数据:
Last Name, First Name Actual Sale Date
Bugs, Rabbit and Bunny 12/11/2015
Reid, Mark and Connie 3/8/2015
Cortese, Robert and Laura 10/15/2014
Reid, Mark and Connie 2/28/2015
Run Code Online (Sandbox Code Playgroud)
我需要删除 2015 年 3 月 8 日的 Reid、Mark 和 Connie。当我运行上面的 drop 列片段时,新的 csv 不返回任何数据,仅返回列标题。如何解决这个问题,请帮助Pythoners。
您需要加上引号3/8/2015并稍微更改逻辑以过滤掉所有不等于您正在过滤的条件的内容。每个条件还需要括号。
df[~((df['Last Name, First Name'] == 'Reid, Mark and Connie') &
(df['Actual Sale Date'] == '3/8/2015'))]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2225 次 |
| 最近记录: |