当我们使用pandas模块处理数据时,我们常常需要对数据进行抽取、筛选等操作。下面我将为大家介绍一些抽取行列数据的常用方法。
1. 通过标签名抽取列数据
我们可以使用[]
和列的标签名来抽取列数据。例如:
import pandas as pd
data = {'name': ['Alice', 'Bob', 'Charlie', 'David', 'Ella'],
'age': [21, 22, 23, 20, 21],
'gender': ['female', 'male', 'male', 'male', 'female'],
'score': [90, 89, 92, 87, 91]}
df = pd.DataFrame(data)
# 通过列的标签名抽取列数据
name_series = df['name']
score_series = df['score']
print(name_series)
print(score_series)
这段代码将会输出:
0 Alice
1 Bob
2 Charlie
3 David
4 Ella
Name: name, dtype: object
0 90
1 89
2 92
3 87
4 91
Name: score, dtype: int64
可以看到,我们通过列的标签名分别抽取了name
和score
列的数据。
2. 通过标签名抽取行数据
我们可以使用loc
方法和行的标签名来抽取行数据。例如:
# 通过行的标签名抽取行数据
row_0 = df.loc[0]
row_2 = df.loc[2]
print(row_0)
print(row_2)
这段代码将会输出:
name Alice
age 21
gender female
score 90
Name: 0, dtype: object
name Charlie
age 23
gender male
score 92
Name: 2, dtype: object
可以看到,我们通过行的标签名分别抽取了第1行和第3行的数据。
3. 通过位置抽取行列数据
我们可以使用iloc
方法通过位置来抽取行列数据。例如:
# 通过位置抽取行列数据
row_0_col_0 = df.iloc[0, 0]
row_1_col_2 = df.iloc[1, 2]
row_2_to_4_col_1_to_3 = df.iloc[2:5, 1:4]
print(row_0_col_0)
print(row_1_col_2)
print(row_2_to_4_col_1_to_3)
这段代码将会输出:
Alice
male
age gender score
2 23 male 92
3 20 male 87
4 21 female 91
可以看到,我们通过位置抽取了第1行第1列、第2行第3列以及前3行和第2到4列的数据。
总结:
以上就是pandas抽取行列数据的几种常用方法,其中通过标签名和位置抽取数据的方法比较常用。在实际应用中,我们可以根据具体的数据需求采用不同的方法进行数据抽取。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:pandas抽取行列数据的几种方法 - Python技术站