示例数据:
import pandas as pd
df1=pd.DataFrame({'Original City': {'Daimler': 'Chicago',
'Mitsubishi': 'LA',
'Tesla': 'Vienna',
'Toyota': 'Zurich',
'Renault': 'Sydney',
'Ford': 'Toronto'}})
df2=pd.DataFrame({'Current City': {'Tesla': 'Amsterdam',
'Renault': 'Paris',
'BMW': 'Munich',
'Fiat': 'Detroit',
'Audi': 'Berlin',
'Ferrari': 'Bruxelles'}})
现在我的问题是:
我正在尝试使用 assign()
方法创建一个包含 whitespace
的列:
df1.assign(Original City=df2['Current City'])
^
#white space
我试过了:
df1.assign('Original City'=df2['Current City'])
df1.assign(r'Original City'=df2['Current City'])
正如预期的那样,它给我一个错误:
File "<ipython-input-132-2ac564ac9d47>", line 1
df1.assign(Original City=df2['Current City'])
^
SyntaxError: invalid syntax
但我可以这样分配我的专栏:
df1.assign(OriginalCity=df2['Current City'])
是否可以使用 assign()
方法创建包含 ' ' 空格(空白)的列?
最佳答案
你可以使用解压字典:
d = {'Original City':df2['Current City']}
df1.assign(**d)
或者解压数据框:
df1.assign(**df2[['Current City']].rename({'Current City': 'Original City'}))
关于python - 如何使用 Pandas 中的 assign() 方法创建包含空格的列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67180716/