将数字格式应用于panda数据框中包含空格作为值的列



将数字格式应用于数据帧中的列时遇到问题,因为列包含非数字值("作为值(。我曾尝试将这些列转换为数字,并将格式应用于这些列,但遇到了一些错误。

那么,有没有一种方法可以将列转换为数字,并应用忽略非数字值的格式(在这种情况下仅"作为值(

这是我尝试过的一段代码,但遇到了错误。任何建议

pd.to_numeric(df_both['col1','col2'],errors='ignore')df_both[['col1','col2']] = df_both[['col1','col2']].replace({'nan':''},regex=True)df_both['col1'] = df_both.apply(lambda x: "{:,}".format(x['col1']),axis=1)df_both['col2'] = df_both.apply(lambda x: "{:,}".format(x['col2']),axis=1)

您可以尝试一个简单的tryexcept块来相应地格式化数据。

def format(x):
try:
return "{:,}".format(float(x))
except:
return x
df_both['col1'] = df_both['col1'].apply(lambda x: format(x))

最新更新