欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Series和DataFrame的简单数学运算

程序员文章站 2022-03-23 09:12:53
Series和DataFrame的简单数学运算Series和DataFrame的简单数学运算操作学习引入相关库Series的数学运算DataFrame的运算DataFrame内置的运算Series和DataFrame的简单数学运算操作学习import numpy as npimport pandas as pdfrom pandas import Series,DataFrame引入相关库import numpy as npimport pandas as pdfrom pandas imp...

Series和DataFrame的简单数学运算操作学习

引入相关库

import numpy as np
import pandas as pd
from pandas import Series,DataFrame

Series的数学运算

首先创建两个series,s1和s2

s1=Series([1,2,3],index=['A','B','C'])
s1
A    1
B    2
C    3
dtype: int64
s1=Series([1,2,3],index=['A','B','C'])
s1
A    1
B    2
C    3
dtype: int64
s2=Series([4,5,6,7],index=['B','C','D','E'])
s2
B    4
C    5
D    6
E    7
dtype: int64

获取s1+s2的运算结果
其中A在s2里面为NaN,D和E在s1里面为NaN,NaN和任何数相加为NaN

s1 + s2
A    NaN
B    6.0
C    8.0
D    NaN
E    NaN
dtype: float64

DataFrame的运算

先创建两个DataFrame
第一个DataFrame为2*2的

df1=DataFrame(np.arange(4).reshape(2,2),index=['A','B'],columns=['BJ','SH'])
df1
     BJ SH
----------
A    0   1
B    2   3

第二个DataFrame为3*3的

df2=DataFrame(np.arange(9).reshape(3,3),index=['A','B','C'],columns=['BJ','SH','GZ'])
df2
     BJ SH GZ
-------------
A    0  1  2
B    3  4  5
C    6  7  8

获取df1+df2的运算结果
加法规则与Sereies类似,df1相对于df2没有值的地方作为NaN参与运算,结果也为NaN。

     BJ    SH   GZ
------------------
A    0.0  NaN  2.0
B    5.0  NaN  7.0
C    NaN  NaN  NaN

DataFrame内置的运算

创建一个新的DataFrame

df3=DataFrame([[1,2,3],[4,5,np.nan],[7,8,9]],index=['A','B','C'],columns=['c1','c2','c3'])
df3
     c1  c2  c3
------------------
A    1   2   3.0
B    4   5   NaN
C    7   8   9.0

sum运算返回一个Series,忽略NaN的值,得出每一列的和

df3.sum()
c1    12.0
c2    15.0
c3    12.0
dtype: float64

如下可以获取每一行的求和

df3.sum(axis=1)
A     6.0
B     9.0
C    24.0
dtype: float64

min求每一列的最小值,如果求行的min传入axis=1

df3.min()
c1    1.0
c2    2.0
c3    3.0
dtype: float64

max求每一列的最大值,如果求行的max传入axis=1

df3.max()
c1    7.0
c2    8.0
c3    9.0
dtype: float64

describe会返回一些以列为基础的统计的数据,count代表数据个数,mean代表平均值,std代表标准差,min代表最小值,max代表最大值,以及百分比数据。

df3.describe()
       c1   c2    c3
-------------------------
count 3.0  3.0  2.000000
mean  4.0  5.0  6.000000
std   3.0  3.0  4.242641
min   1.0  2.0  3.000000
25%   2.5  3.5  4.500000
50%   4.0  5.0  6.000000
75%   5.5  6.5  7.500000
max   7.0  8.0  9.000000

本文地址:https://blog.csdn.net/weixin_44039183/article/details/107878158