📅  最后修改于: 2023-12-03 15:11:14.884000             🧑  作者: Mango
Pandas是Python中非常常用的数据处理库,在数据清洗、处理、分析方面都有着非常好的表现。为了更好地处理数据,我们需要掌握如何建立索引及选择数据。
在Pandas中,我们可以使用set_index()
方法为DataFrame设置索引。例如,我们有一个DataFrame如下:
import pandas as pd
df = pd.DataFrame({
'name': ['Alice', 'Bob', 'Cathy'],
'age': [25, 18, 32],
'gender': ['F', 'M', 'F']
})
print(df)
输出结果为:
name age gender
0 Alice 25 F
1 Bob 18 M
2 Cathy 32 F
我们可以使用如下代码将name
列设为索引:
df = df.set_index('name')
print(df)
输出结果为:
age gender
name
Alice 25 F
Bob 18 M
Cathy 32 F
这样,我们就成功将name
列设为了DataFrame的索引。此时,name
列并不会被当做普通的列来处理,而是会被当做索引来使用。我们可以通过df.index
来查看当前DataFrame的索引。
在Pandas中,我们可以使用loc[]
和iloc[]
来选择数据。
loc[]
用于按照行标签和列标签来索引数据。我们可以使用单独的标签、标签的列表或者切片来选择数据。例如,我们可以使用如下代码选择Alice
这一行数据:
print(df.loc['Alice'])
输出结果为:
age 25
gender F
Name: Alice, dtype: object
我们也可以按照列名来选择数据,例如,选择age
列和gender
列:
print(df.loc[:, ['age', 'gender']])
输出结果为:
age gender
name
Alice 25 F
Bob 18 M
Cathy 32 F
iloc[]
用于按照行的位置和列的位置来索引数据。我们可以使用整数、整数列表或者切片来选择数据。例如,我们可以使用如下代码选择第2行和第3行数据:
print(df.iloc[1:3])
输出结果为:
age gender
name
Bob 18 M
Cathy 32 F
我们也可以按照列的位置来选择数据,例如,选择第1列和第2列(从0开始计数):
print(df.iloc[:, [0, 1]])
输出结果为:
age gender
name
Alice 25 F
Bob 18 M
Cathy 32 F
建立索引和选择数据是Pandas中非常常见的操作,掌握了这些技能,我们就可以更好地处理数据了。