【发布时间】:2021-04-20 15:25:28
【问题描述】:
我正在使用不同的数据集合并数据并将它们附加到一个数据集中。问题是有时数据集df_fours 是空的。为了解决这个问题,我使用了try 和pass 语句。
现在,当 df_fours_unique 被绕过并且我尝试以 CSV 格式导出结果时,它会给出错误:
df_append3 is not defined
我想要的是有一些条件语句(或者如果有其他东西),如果它没有任何错误,它将导出df_append3。否则它只会追加df_append2。我目前拥有的是:
df_unique = pd.merge(df7,df6_1,on='DEL_KEY1',how='left')
df_twos = pd.merge(df9,df8_1,on='DEL_KEY1',how='left')
df_twos_unique = df_twos[df_twos.index % 2 == 0]
df_threes = pd.merge(df11,df10_1,on='DEL_KEY1',how='left')
df_threes_unique = df_threes[df_threes.index % 3 == 0]
try:
df_fours = pd.merge(df13,df12_1,on='DEL_KEY1',how='left')
df_fours_unique = df_fours[df_fours.index % 4 == 0]
except:
pass
df_append1 = df_unique.append(df_twos_unique)
df_append2 = df_append1.append(df_threes_unique)
try:
df_append3 = df_append2.append(df_fours_unique)
except:
pass
df_append3.to_csv('export.csv')
由于机密性,无法附加数据集。
【问题讨论】:
-
“由于机密性,无法附加数据集。” - 所以只需发布minimal reproducible example...
-
您能否确保上面提供的代码的缩进与您实际使用的代码相匹配? Python 是一种对缩进敏感的语言,不同的缩进级别会改变脚本的解释/执行方式。
-
无论如何,您对
df_append3的定义是在try块内,因此如果出现错误,它将不会被定义...移动到to_csv行以位于@987654333 中@也... -
首先,你应该修复你的缩进。它在python中很重要。其次,您仅在其中一个 try 语句中定义
df_append3,因此如果存在问题,则不会被定义。一个简单的if no error df_append3 else df_append2?
标签: python pandas dataframe csv