📅  最后修改于: 2023-12-03 14:53:15.462000             🧑  作者: Mango
在 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 的第一列。