从现有DataFrame和索引创建新的pandas DataFrame

时间:2015-01-10 05:28:31

标签: python numpy pandas

我有一个像这样的DataFrame:

  a b
A 1 0
B 0 1

我有一个数组[“A”,“B”,“C”]。

从这些开始,我想创建一个像这样的新DataFrame:

  a   b
A 1   0
B 0   1
C NaN NaN

我该怎么做?

2 个答案:

答案 0 :(得分:3)

假设我理解你所追求的东西(撇开奇怪的重复索引案例),一种方法是使用loc索引你的框架:

>>> df = pd.DataFrame({'a': {'A': 1, 'B': 0}, 'b': {'A': 0, 'B': 1}})
>>> arr = ["A", "B", "C"]
>>> df
   a  b
A  1  0
B  0  1
>>> df.loc[arr]
    a   b
A   1   0
B   0   1
C NaN NaN

答案 1 :(得分:1)

创建一个只有index = ['C']和concat:

的DataFrame
df = pd.DataFrame({'a': {'A': 1, 'B': 0}, 'b': {'A': 0, 'B': 1}}
df = pd.concat([df, pd.DataFrame(index=['C'])])