<p>您可以将列分配给新的数据帧以创建<code>Person</code>和<code>Cars</code></p>
<pre><code>>>> df = pd.DataFrame(
... [['tom', 28, "tesla", "model s" ],
... ['nick', 30, "ford", "mustang"],
... ['juli', 56, "tesla", "model s"]] ,
... columns = ['PersonName', 'PersonAge', "Car", "CarModel"]
... )
>>> df
PersonName PersonAge Car CarModel
0 tom 28 tesla model s
1 nick 30 ford mustang
2 juli 56 tesla model s
>>>
>>> Person = df[["PersonName", "PersonAge"]]
>>> Cars = df[["Car", "CarModel"]]
>>> Person
PersonName PersonAge
0 tom 28
1 nick 30
2 juli 56
>>> Cars
Car CarModel
0 tesla model s
1 ford mustang
2 tesla model s
</code></pre>
<p>请注意,原始数据帧有一个索引,在创建新的数据帧时,该索引将被保留。该索引可以用作外键。事实上,索引部分在熊猫中通常是透明的。要从人名中选择汽车,您可以</p>
<pre><code>>>> Cars[Person["PersonName"] == "nick"]
Car CarModel
1 ford mustang
</code></pre>
<p>如果要将索引转换为自己的列,可以这样做</p>
<pre><code>>>> Cars["id"] = Cars.index
>>> Person["CarId"] = Person.index
>>> Person
PersonName PersonAge CarId
0 tom 28 0
1 nick 30 1
2 juli 56 2
>>> Cars
Car CarModel id
0 tesla model s 0
1 ford mustang 1
2 tesla model s 2
</code></pre>
<p>但坚持指数操作通常更方便。。。。除非重置索引,否则必须使用不同的列</p>