📅  最后修改于: 2023-12-03 15:00:24.396000             🧑  作者: Mango
在pandas中,DataFrame是一个二维表格,其中包含多个行和多个列,我们可以根据自定义的索引对其进行选择和操作。
首先,我们需要创建一个DataFrame。以下是创建DataFrame的示例代码:
import pandas as pd
data = {'name': ['Alice', 'Bob', 'Charlie', 'David', 'Eric'],
'age': [25, 30, 45, 19, 36],
'country': ['USA', 'Canada', 'England', 'USA', 'Canada']}
df = pd.DataFrame(data)
通过运行以上代码,我们将创建一个名为df的DataFrame对象,其中包含名称、年龄和国家三列数据。
默认情况下,DataFrame对象的索引是从0到n-1的整数,其中n是行数。但是,我们可以使用set_index()方法将一列数据设为索引。
df.set_index('name', inplace=True)
以上代码将'name'列设置为索引,并将inplace参数设置为True,以便df对象立即更改。我们可以使用以下代码查看新的df对象:
print(df)
输出结果如下:
age country
name
Alice 25 USA
Bob 30 Canada
Charlie 45 England
David 19 USA
Eric 36 Canada
现在,我们可以使用自定义的索引对DataFrame进行选择和操作。
要选择单个元素,我们可以按照以下格式输入【行索引值】[列索引值]。
例如,要选择名称为'Bob'的个人的'age'值,我们可以使用以下代码:
print(df.loc['Bob']['age'])
输出结果为:
30
要选择多个元素,我们可以使用切片。例如,要选择前两个人的所有列,请使用以下代码:
print(df.iloc[:2])
输出结果为:
age country
name
Alice 25 USA
Bob 30 Canada
我们也可以使用条件过滤来选择特定的行。例如,以下代码将选择所有来自加拿大的人:
print(df[df['country'] == 'Canada'])
输出结果为:
age country
name
Bob 30 Canada
Eric 36 Canada
以上就是使用DataFrame选择自定义索引的示例。通过自定义索引,我们可以更轻松地对DataFrame进行选择和操作,以满足我们的需求。