📜  如何获取 Pandas DataFrame 的第一列?(1)

📅  最后修改于: 2023-12-03 14:53:15.462000             🧑  作者: Mango

如何获取 Pandas DataFrame 的第一列?

在 Pandas 中,DataFrame 是一种二维表格数据结构,通常包含多列并且每列可能包含不同类型的数据。如果我们只想要从 DataFrame 中提取第一列,可以使用下面的方法:

import pandas as pd

# 创建一个DataFrame
df = pd.DataFrame({'col1':[1, 2, 3], 'col2':[4, 5, 6], 'col3':[7, 8, 9]})

# 获取第一列
col1 = df['col1']
print(col1)

以上代码将输出:

0    1
1    2
2    3
Name: col1, dtype: int64

可以看到,df['col1'] 返回的是一个 Series 对象,而不是 DataFrame 对象。如果我们想要获得一个 DataFrame 对象,只需要将 ['col1'] 以列表的形式传递即可:

import pandas as pd

# 创建一个DataFrame
df = pd.DataFrame({'col1':[1, 2, 3], 'col2':[4, 5, 6], 'col3':[7, 8, 9]})

# 获取第一列
df_col1 = df[['col1']]
print(df_col1)

以上代码将输出:

   col1
0     1
1     2
2     3

这里需要注意的是,df[['col1']] 返回的是一个 DataFrame 对象而不是 Series 对象,这是因为我们使用了两个方括号。这种方式还有一个好处,就是如果有多列需要选择,我们只需要在列表中添加它们的列名即可。

除了以上两种方式,我们还可以使用 .iloc 属性来获取 DataFrame 的第一列。.iloc 属性可以用来根据行和列的整数位置进行访问。因为列是 DataFrame 的第二维,所以我们可以选择整数位置为 0 的列:

import pandas as pd

# 创建一个DataFrame
df = pd.DataFrame({'col1':[1, 2, 3], 'col2':[4, 5, 6], 'col3':[7, 8, 9]})

# 获取第一列
col1 = df.iloc[:, 0]
print(col1)

以上代码将输出:

0    1
1    2
2    3
Name: col1, dtype: int64

注意,这里使用了 .iloc[:, 0] 来选择第一列。冒号 : 表示选择所有行,数字 0 表示选择第一列。

无论采用哪种方式,我们都可以轻松地获取 DataFrame 的第一列。