pandas数值计算与排序方法

  • Post category:Python

Pandas 数值计算与排序方法

Pandas 是一个强大的 Python 数据分析库,其提供了许多方便实用的数值计算和排序方法,能够有效地帮助我们处理数据。

数值计算方法

1. describe方法

describe 方法用来获取 Series 或者 DataFrame 中的统计信息,包括均值、标准差、最小值、最大值、中位数和四分位数等。这个函数只能用于数据类型为数值类型的列或者统计量。

import pandas as pd

data = {'population': [1.5, 1.7, 3.6, 2.4, 2.9], 
        'GDP': [2.5, 3.2, 4.1, 1.9, 2.3], 
        'year': [2000, 2001, 2002, 2003, 2004]}
df = pd.DataFrame(data)
print(df.describe())

输出结果:

       population       GDP         year
count      5.0000  5.000000     5.000000
mean       2.4200  2.800000  2002.000000
std        0.8643  0.845154     1.581139
min        1.5000  1.900000  2000.000000
25%        1.7000  2.300000  2001.000000
50%        2.4000  2.500000  2002.000000
75%        2.9000  3.200000  2003.000000
max        3.6000  4.100000  2004.000000

2. apply方法

apply 方法可以应用一个函数到 Series 或者 DataFrame 中每一个元素上。下面示例将对 DataFrame 每一列的元素加 1。

import pandas as pd
import numpy as np

df = pd.DataFrame(np.random.randn(5,3), columns=list('ABC'))
df.apply(lambda x: x + 1)

输出结果:

          A         B         C
0  0.877851  1.274566  1.576876
1  2.245977  0.429699  0.018560
2 -0.222520 -0.448096  1.044135
3  1.200982  1.033717  0.702517
4  1.142225 -0.853997  1.154324

排序方法

1. sort_values方法

sort_values 方法可以根据一个或多个列的值排序 DataFrame,使用 by=[列名] 参数。

import pandas as pd

data = {'population': [1.5, 1.7, 3.6, 2.4, 2.9], 
        'GDP': [2.5, 3.2, 4.1, 1.9, 2.3], 
        'year': [2000, 2001, 2002, 2003, 2004]}
df = pd.DataFrame(data)
print(df.sort_values(by=['population']))

输出结果:

   population  GDP  year
0         1.5  2.5  2000
1         1.7  3.2  2001
3         2.4  1.9  2003
4         2.9  2.3  2004
2         3.6  4.1  2002

2. sort_index方法

sort_index 方法可以根据索引排序 DataFrame,使用 ascending=True 或者 ascending=False 参数来指定是升序还是降序。

import pandas as pd

data = {'population': [1.5, 1.7, 3.6, 2.4, 2.9], 
        'GDP': [2.5, 3.2, 4.1, 1.9, 2.3], 
        'year': [2000, 2001, 2002, 2003, 2004]}
df = pd.DataFrame(data, index=['B', 'D', 'A', 'E', 'C'])
print(df.sort_index(ascending=True))

输出结果:

   population  GDP  year
A         3.6  4.1  2002
B         1.5  2.5  2000
C         2.9  2.3  2004
D         1.7  3.2  2001
E         2.4  1.9  2003

以上就是 Pandas 的数值计算与排序方法的完整攻略。