将 Pandas DataFrame 列转换为 Series 是一个非常常见的需求,因为 Series 是 Pandas 中最基本的数据类型,而 DataFrame 是由多个 Series 组成的二维表格。
以下是将 DataFrame 列转换为 Series 的完整攻略:
方法一:用 loc 或 iloc 选取单列
我们可以使用 DataFrame 的 loc
或 iloc
属性选取单列,然后将其转换为 Series,示例如下:
import pandas as pd
# 创建一个 DataFrame
df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]})
# 用 loc 选取单列,并转换为 Series
s1 = df.loc[:, 'A']
print(s1)
# 用 iloc 选取单列,并转换为 Series
s2 = df.iloc[:, 1]
print(s2)
输出:
0 1
1 2
2 3
Name: A, dtype: int64
0 4
1 5
2 6
Name: B, dtype: int64
方法二:用索引选取单列
我们也可以使用 DataFrame 的列索引选取单列,然后将其转换为 Series,示例如下:
import pandas as pd
# 创建一个 DataFrame
df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]})
# 选取单列,并转换为 Series
s1 = df['A']
print(s1)
# 选取单列,并转换为 Series
s2 = df.B
print(s2)
输出:
0 1
1 2
2 3
Name: A, dtype: int64
0 4
1 5
2 6
Name: B, dtype: int64
需要注意的是,如果列名包含空格等特殊字符,我们需要使用方括号选取单列,否则会报语法错误。
方法三:用 get 方法选取单列
另外一种选取单列的方法是使用 DataFrame 的 get
方法,示例如下:
import pandas as pd
# 创建一个 DataFrame
df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]})
# 用 get 方法选取单列,并转换为 Series
s1 = df.get('A')
print(s1)
输出:
0 1
1 2
2 3
Name: A, dtype: int64
需要注意的是,如果 DataFrame 中不存在指定的列名,get
方法会返回 None。
至此,我们详细讲解了如何将 Pandas DataFrame 列转换为 Series,并提供了多种实例说明。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:如何将Pandas DataFrame列转换为系列 - Python技术站