我想將多列添加到pandas
DataFrame
並將它們設置爲等於現有列。有沒有一個簡單的方法來做到這一點?在R
我會做:將多列添加到DataFrame並將它們設置爲等於現有列
df <- data.frame(a=1:5)
df[c('b','c')] <- df$a
df
a b c
1 1 1 1
2 2 2 2
3 3 3 3
4 4 4 4
5 5 5 5
在pandas
這導致KeyError: "['b' 'c'] not in index"
:
df = pd.DataFrame({'a': np.arange(1,6)})
df[['b','c']] = df.a
這是值得注意的,如。 'df = df.assign(c ='some_value',b ='some_value')'確實按字母順序將列添加到原始數據框中。所以生成的數據框將有列a b c而不是c b。 –
@Cpt_Jauchefuerst,好點,謝謝!我已將它添加到答案 – MaxU