[index [] [列]中没有一个 - modfiy多个CSV文件
我想使用以下代码修改多个CSV文件:
files = glob.glob(r'path')
df2 = pd.read_csv(r'path')
for fp in files:
df = pd.read_csv(fp, names=["vermittler", "vermittler 2", "vermittler 3", "kunde", "nachname", "vorname", "strasse", "plz", "ort", "geburtsdatum", "beruf", "land", "per_du", "login", "login 2", "nationalitaet", "rechtsform", "id", "versicherungsscheinnummer", "sparte", "gesellschaft", "zahlweise", "beginn", "ablauf", "beitrag_netto", "status", "risiko", "antragsdatum", "stornodatum"], sep=',',on_bad_lines='skip')
df.to_csv
for fp in files:
df = df.fillna(0)
df2 = df2.fillna(0)
#df1['sparte']=df1['sparte'].astype(int)
#df2['sparte']=df2['sparte'].astype(int)
df['gesellschaft']=df['gesellschaft'].astype(object)
#df2['gesellschaft']=df2['gesellschaft'].astype(object)
df3 = pd.merge(df,df2[['status','stati']].astype(object),on='status', how='left').drop(columns = ['status'])
df3.rename({'stati':'status'}, axis=1, inplace=True)
df4 = df3.merge(df2[['sparte','sparten']].astype(object),on='sparte', how='left').drop(columns = ['sparte'])
df4.rename({'sparten':'sparte'}, axis=1, inplace=True)
df5 = df4.merge(df2[['gesellschaft','gesellschaften']].astype(object), left_on='gesellschaft',
right_on = df2['gesellschaft'].astype(object), how='left')
df5.to_csv
但是我收到错误消息:
KeyError: "None of [Index(['status', 'stati'], dtype='object')] are in the [columns]"
我不明白为什么,因为我尝试了一个非常相似的代码,但是对于一个文件,我
df1 = pd.read_csv(r'path')
df2 = pd.read_csv(r'path')
df1 = df1.fillna(0)
df2 = df2.fillna(0)
df1['gesellschaft']=df1['gesellschaft'].astype(object)
df3 = pd.merge(df1,df2[['status','stati']].astype(object),on='status', how='left').drop(columns = ['status'])
df3.rename({'stati':'status'}, axis=1, inplace=True)
是否会出现错误全球。
我被卡住了:?也许有人知道是什么原因引起了问题。
I want to modify multiple csv files with the following code:
files = glob.glob(r'path')
df2 = pd.read_csv(r'path')
for fp in files:
df = pd.read_csv(fp, names=["vermittler", "vermittler 2", "vermittler 3", "kunde", "nachname", "vorname", "strasse", "plz", "ort", "geburtsdatum", "beruf", "land", "per_du", "login", "login 2", "nationalitaet", "rechtsform", "id", "versicherungsscheinnummer", "sparte", "gesellschaft", "zahlweise", "beginn", "ablauf", "beitrag_netto", "status", "risiko", "antragsdatum", "stornodatum"], sep=',',on_bad_lines='skip')
df.to_csv
for fp in files:
df = df.fillna(0)
df2 = df2.fillna(0)
#df1['sparte']=df1['sparte'].astype(int)
#df2['sparte']=df2['sparte'].astype(int)
df['gesellschaft']=df['gesellschaft'].astype(object)
#df2['gesellschaft']=df2['gesellschaft'].astype(object)
df3 = pd.merge(df,df2[['status','stati']].astype(object),on='status', how='left').drop(columns = ['status'])
df3.rename({'stati':'status'}, axis=1, inplace=True)
df4 = df3.merge(df2[['sparte','sparten']].astype(object),on='sparte', how='left').drop(columns = ['sparte'])
df4.rename({'sparten':'sparte'}, axis=1, inplace=True)
df5 = df4.merge(df2[['gesellschaft','gesellschaften']].astype(object), left_on='gesellschaft',
right_on = df2['gesellschaft'].astype(object), how='left')
df5.to_csv
But i get the error message:
KeyError: "None of [Index(['status', 'stati'], dtype='object')] are in the [columns]"
I dont understand why, because i've tried a very similar code but for one file:
df1 = pd.read_csv(r'path')
df2 = pd.read_csv(r'path')
df1 = df1.fillna(0)
df2 = df2.fillna(0)
df1['gesellschaft']=df1['gesellschaft'].astype(object)
df3 = pd.merge(df1,df2[['status','stati']].astype(object),on='status', how='left').drop(columns = ['status'])
df3.rename({'stati':'status'}, axis=1, inplace=True)
Does the error show up because of the for loop or becuase of the glob.glob.
I'm stucked :? maybe someone has an idea what is causing the problem.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论