我正在尝试将3x2 numpy数组附加到现有数据框。像这样:
import pandas as pd
import numpy as np
df = pd.Dataframe({"A": [0,0,0], "B": [1,1,1]})
arr = np.arange(6).reshape(3, 2)
df[["C", "D"]] = arr # NOPE!
如何使它工作?
答案 0 :(得分:2)
在将数组转换为数据框时使用concat
:
df = pd.concat([df, pd.DataFrame(arr, columns=["C", "D"])], axis=1)
A B C D
0 0 1 0 1
1 0 1 2 3
2 0 1 4 5
答案 1 :(得分:0)
它不起作用,因为您需要通过df:
arr = pd.DataFrame(np.arange(6).reshape(3, 2))
df[["C", "D"]] = arr #YEP
#Output
A B C D
0 0 1 0 1
1 0 1 2 3
2 0 1 4 5