📅  最后修改于: 2023-12-03 15:34:20.437000             🧑  作者: Mango
在 Pandas 中,Series.select() 方法用于根据索引标签、索引位置或布尔条件选择一部分数据。该方法类似于 [] 运算符,但更强大,可以轻松选择多个数据行。
Series.select(self, crit, axis=0, inplace=False)
参数说明:
crit
:选择数据的标签、位置或条件;axis
:默认值为 0,表示按行选择,为 1 时表示按列选择;inplace
:默认值为 False,表示原始数据不受影响;为 True 时则更改原始数据。import pandas as pd
data = {"年份": [2017, 2018, 2019, 2020, 2021],
"销售额(亿)": [10.2, 12.8, 14.1, 16.2, 17.8],
"利润率(%)": [15.28, 16.93, 18.29, 19.08, 20.14]}
df = pd.DataFrame(data)
s = df.iloc[3]
print(df.select('年份')) # 选择 '年份' 列的数据
print(df.select('2019')) # 选择 索引标签为 2019 的数据
print(df.select(3)) # 选择 索引位置为 3 的数据
print(df.select(s)) # 选择 等于 s 的数据行
返回结果:
2017
0 2019
Name: 年份, dtype: int64
3
年份 销售额(亿) 利润率(%)
3 2020 16.2 19.08
import pandas as pd
data = {"年份": [2017, 2018, 2019, 2020, 2021],
"销售额(亿)": [10.2, 12.8, 14.1, 16.2, 17.8],
"利润率(%)": [15.28, 16.93, 18.29, 19.08, 20.14]}
df = pd.DataFrame(data)
print(df.select(['年份', '利润率(%)'], axis=1)) # 选择 '年份' 和 '利润率(%)' 两列数据
返回结果:
年份 利润率(%)
0 2017 15.28
1 2018 16.93
2 2019 18.29
3 2020 19.08
4 2021 20.14
import pandas as pd
data = {"年份": [2017, 2018, 2019, 2020, 2021],
"销售额(亿)": [10.2, 12.8, 14.1, 16.2, 17.8],
"利润率(%)": [15.28, 16.93, 18.29, 19.08, 20.14]}
df = pd.DataFrame(data)
df.select(['年份', '利润率(%)'], axis=1, inplace=True)
print(df) # 对原始数据更改,只保留 '年份' 和 '利润率(%)' 两列
返回结果:
年份 利润率(%)
0 2017 15.28
1 2018 16.93
2 2019 18.29
3 2020 19.08
4 2021 20.14
Series.select() 方法能够方便地根据索引标签、索引位置或布尔条件选择数据。除了 [] 运算符之外,提供了更灵活的数据选择方式。在使用时可以熟练掌握其参数,并注意更改原始数据时需要谨慎操作。