Python Pandas – 查询DataFrame的列
在数据分析中,Pandas是一个强大且灵活的工具,可以用于处理和分析各种类型的数据。Pandas提供了多种数据结构,其中DataFrame是最常用的一种。它是一个二维表格类型的数据结构,其中每列可以有不同的数据类型。
本篇文章将介绍如何使用Python Pandas查询DataFrame中的列。
Pandas DataFrame
在使用Pandas之前,我们需要先安装Pandas库。
!pip install pandas
接下来,我们创建一个简单的DataFrame。
import pandas as pd
data = {'Name': ['Tom', 'Jack', 'Steve', 'Ricky'],
'Age': [28, 34, 29, 42],
'Country': ['US', 'UK', 'UK', 'US']}
df = pd.DataFrame(data)
print(df)
输出:
Name Age Country
0 Tom 28 US
1 Jack 34 UK
2 Steve 29 UK
3 Ricky 42 US
这个DataFrame包含三列,分别是Name、Age和Country。
查询单列
要查询DataFrame中的单列,我们可以使用列名或者索引号来访问该列。
使用列名:
# 使用列名来访问Country列
country_col = df['Country']
print(country_col)
输出:
0 US
1 UK
2 UK
3 US
Name: Country, dtype: object
可以看到,使用列名访问某一列时,返回的是一个Series对象。Series是Pandas中另一种重要的数据结构,可以看作是一维数组,其中每个元素有一个自己的标签,称为索引。
使用索引号:
# 使用索引号来访问第二列(Age列)
age_col = df.iloc[:, 1]
print(age_col)
输出:
0 28
1 34
2 29
3 42
Name: Age, dtype: int64
上述代码中的iloc表示通过索引号选取某一行或某一列。例如,df.iloc[:, 1]表示选取所有行,第二列。
查询多列
我们可以通过传递一个列表来选择DataFrame中的多个列。
# 查询Name和Country两列
name_and_country = df[['Name', 'Country']]
print(name_and_country)
输出:
Name Country
0 Tom US
1 Jack UK
2 Steve UK
3 Ricky US
查询所有列
如果我们想要查询DataFrame中的所有列,可以简单地将DataFrame中的名称或索引列表省略。
# 查询所有列
all_cols = df[:]
print(all_cols)
输出:
Name Age Country
0 Tom 28 US
1 Jack 34 UK
2 Steve 29 UK
3 Ricky 42 US
结论
本篇文章介绍了如何使用Python Pandas查询DataFrame中的列。我们可以通过列名和索引号来访问某一列,也可以通过传递一个列表来选择多个列。
极客笔记