网络编程
位置:首页>> 网络编程>> Python编程>> Pandas中DataFrame的常用用法分享

Pandas中DataFrame的常用用法分享

作者:小小鸟爱吃辣条  发布时间:2022-08-10 01:17:49 

标签:Pandas,DataFrame

Pandas是Python中最流行的数据分析和处理工具之一,它提供了一个名为DataFrame的数据结构,可以被认为是一个二维表格或电子表格,其中包含行和列。在本文中,我们将深入探讨Pandas中DataFrame的各种常用的用法,包括创建DataFrame、选择数据、修改数据、数据排序、数据统计、数据合并、数据分组和数据透视表等。

1.创建DataFrame

要创建DataFrame,可以使用Pandas中的DataFrame()函数。下面是一个例子:

import pandas as pd

data = {'name': ['Alice', 'Bob', 'Charlie', 'David'],
       'age': [25, 32, 18, 47],
       'gender': ['F', 'M', 'M', 'M']}

df = pd.DataFrame(data)
print(df)

输出:

       name  age gender
0     Alice   25      F
1       Bob   32      M
2   Charlie   18      M
3     David   47      M

2.选择数据

在DataFrame中选择数据有几种方法。可以使用loc[]和iloc[]函数,也可以使用布尔索引。下面是一些例子:

# 使用loc[]函数选择数据
print(df.loc[0])          # 选择第一行
print(df.loc[0:2])        # 选择前三行
print(df.loc[0:2, 'name'])# 选择前三行的name列

# 使用iloc[]函数选择数据
print(df.iloc[0])         # 选择第一行
print(df.iloc[0:2])       # 选择前两行
print(df.iloc[0:2, 0])    # 选择前两行的第一列

# 使用布尔索引选择数据
print(df[df['age'] > 30]) # 选择年龄大于30的行

3.修改数据

要修改DataFrame中的数据,可以使用loc[]或iloc[]函数。下面是一个例子:

# 修改数据
df.loc[0, 'age'] = 26
print(df)

# 添加新数据
df.loc[4] = ['Eve', 29, 'F']
print(df)

# 删除数据
df = df.drop(4)
print(df)

4.数据排序

要对DataFrame中的数据进行排序,可以使用sort_values()函数。下面是一个例子:

# 按年龄升序排序
df = df.sort_values('age')
print(df)

# 按年龄降序排序
df = df.sort_values('age', ascending=False)
print(df)

5.数据统计

要对DataFrame中的数据进行统计,可以使用describe()函数和其他函数,例如mean()、median()和std()。下面是一个例子:

# 描述数据
print(df.describe())

# 计算平均年龄
print(df['age'].mean())

# 计算年龄中位数
print(df['age'].median())

# 计算年龄标准差
print(df['age'].std())

6.数据合并

要合并两个DataFrame,可以使用concat()函数。下面是一个例子:

# 创建第二个DataFrame
data2 = {'name': ['Frank', 'Grace'],
        'age': [39, 28],
        'gender': ['M', 'F']}
df2 = pd.DataFrame(data2)

# 合并两个DataFrame
df = pd.concat([df, df2])
print(df)

7.数据分组

要按某些标准对DataFrame中的数据进行分组,可以使用groupby()函数。下面是一个例子:

# 按性别分组并计算平均年龄
print(df.groupby('gender')['age'].mean())

8.数据透视表

要创建数据透视表,可以使用pivot_table()函数。下面是一个例子:

# 创建数据透视表
print(pd.pivot_table(df, values='age', index='gender', columns='name'))

来源:https://juejin.cn/post/7221969436885008441

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com