[英]How to assign new column as string to Pandas Assign
How can i assign string as newcolumn to pandas.assign我如何将字符串作为新列分配给 pandas.assign
Example:例子:
newcolumn = 'myColumn'
if(newcolumn != ''):
sourcePandas = sourcePandas.assign(newcolumn = sourcePandas[row['PrimaryColumn']].apply(func))
Above doesn't throw any error, but creates new column with name newcolumn
instead myColumn
以上不会引发任何错误,但会创建名称为
newcolumn
而不是myColumn
的新列
Try this.试试这个。 Assuming
sourcePandas
is your dataframe,假设
sourcePandas
是你的 dataframe,
newcolumn =
by f'{newcolumn}':
inside sourcePandas.assign()
.newcolumn =
替换为f'{newcolumn}':
在sourcePandas.assign()
中。newcolumn = 'myColumn'
if(newcolumn != ''):
sourcePandas = sourcePandas.assign(**{f'{newcolumn}': sourcePandas[row['PrimaryColumn']].apply(func)})
You can assign multiple columns simultaneously as well, using df.assign()
.您也可以使用
df.assign()
同时分配多个列。 The **
is used to unpack the dictionary and convert the constituents into a list of key-value pairs for the keyword-arguments: pandas.DataFrame.assign(self, **kwargs)
. **
用于解压字典并将成分转换为关键字参数的键值对列表: pandas.DataFrame.assign(self, **kwargs)
。
# df --> dataframe
df.assign(**{'A': np.arange(7), 'B': np.arange(7) + 2})
You can pass dict
and then unpack dictionary using **
to pass as key-word arguments into pd.DataFrame.assign
.您可以传递
dict
,然后使用**
解压字典以将关键字 arguments 传递到pd.DataFrame.assign
中。
Ex.:前任。:
newcolumn = 'myColumn'
df = pd.DataFrame()
df.assign(**{newcolumn:[0,1,2]})
myColumn
0 0
1 1
2 2
So it would be所以它会是
newcolumn = 'myColumn'
if(newcolumn != ''):
sourcePandas = sourcePandas.assign(**{newcolumn: sourcePandas[row['PrimaryColumn']].apply(func)})
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.