Har*_*liq 6 python csv string excel
我不明白为什么我收到标题中列出的错误,我打算返回的值是30
import csv
import os
import pandas as pd
os.chdir('C:\\Users\\khalha\\Desktop\\RealExcel')
filename = 'sales.csv'
Sales = pd.read_csv('sales.csv')
iFlowStatus = Sales[Sales['Product'].str.contains('iFlow')]['Status']
print(iFlowStatus)
Run Code Online (Sandbox Code Playgroud)
MEd*_*win 19
@HarisKhaliq,我会回答这个问题,因为这会让其他人受益.错误消息表示数据框包含默认为na/NaN的空白条目.您只需添加na=False
synatx即可填充缺失值的值.
import csv
import os
import pandas as pd
os.chdir('C:\\Users\\khalha\\Desktop\\RealExcel')
filename = 'sales.csv'
Sales = pd.read_csv('sales.csv')
iFlowStatus = Sales[Sales['Product'].str.contains('iFlow', na=False)]['Status']
print(iFlowStatus)
.
Run Code Online (Sandbox Code Playgroud)
另一个可能的问题:您可以使用不包含 NaN 的混合类型列来解决此问题。例如:
> df = pd.DataFrame({'x': ['hi', 99]})
> df.x.isna().any()
False
> df[df.x.str.contains('hi')]
...
ValueError: cannot index with vector containing NA / NaN values
Run Code Online (Sandbox Code Playgroud)
根据您想要做什么,您可以强制转换 ( df.x.astype(str).str.contains('hi')
) 或删除有问题的行。