Python 从现有数据帧和索引创建新数据帧

Python 从现有数据帧和索引创建新数据帧,python,numpy,pandas,Python,Numpy,Pandas,我有这样一个数据帧: a b A 1 0 B 0 1 a b A 1 0 B 0 1 C NaN NaN 我有一个数组[“A”,“B”,“C”] 根据这些,我想创建一个新的数据帧,如下所示: a b A 1 0 B 0 1 a b A 1 0 B 0 1 C NaN NaN 我怎样才能做到这一点?假设我了解您的目的(将奇怪的重复索引情况放在一边),一种方法是使用loc索引到您的帧中: >>> df = pd.DataFrame({

我有这样一个数据帧:

  a b
A 1 0
B 0 1
  a   b
A 1   0
B 0   1
C NaN NaN
我有一个数组[“A”,“B”,“C”]

根据这些,我想创建一个新的数据帧,如下所示:

  a b
A 1 0
B 0 1
  a   b
A 1   0
B 0   1
C NaN NaN

我怎样才能做到这一点?

假设我了解您的目的(将奇怪的重复索引情况放在一边),一种方法是使用
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

假设我了解您的目的(将奇怪的重复索引情况放在一边),一种方法是使用
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

创建一个只有索引=['C']和concat的数据帧:

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

创建一个只有索引=['C']和concat的数据帧:

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