1.算术运算
加法: data.(列名.)add(k) data(.列) + k 减法: data["W"].sub(k) 注意: data["列名"]的效果=data.列名
2.逻辑运算
2.1直接比较型+满足条件赋值

2.2函数型:

3.统计运算
3.1整体统计函数

输出结果:

3.2统计函数

3.3累计函数+画图


4.自定义运算

代码:
python
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
# 7.DataFrame结构的运算
# 7.1算数运算
# 7.1.1加法运算
print("W值都加2的两种写法(一般不用方法2):")
print(data.W.add(2))
print(data.W + 2)
# 7.1.2减法运算
print("W的值都减3:")
print(data["W"].sub(3))
""" data["列名"]的效果=data.列名 """
print("```````````````````````````````````````````````````````````````````````````````````````````````````````")
# 7.2逻辑运算
# 7.2.1直接比较型+满足条件赋值
print("看那个W是大于50的:")
print(data.W > 50)
"返回的是把W单独拎出来,满足返回True,不满足返回False"
print(data[data.W > 50].head())
"""返回整个表中W>50的所有信息"""
print("将W>50并且PIE<18 的行 的所有信息 赋值成 xxx:")
# data[(data.W>50) & (data.PIE<18)]="xxx"
print(data)
"""1.如果有&或者|,各个条件要用括号括起来 如 (条件1)&(条件2)
2.用的是&不是&&"""
print("`````````````````````````````````````````````````````````````````````")
# 7.2.2函数型
print("1.query函数------------------------输出PACE<90或者SALARY_MILLIONS>20的行的信息:")
print(data.query("PACE<90 | SALARY_MILLIONS>20"))
print("2.isin函数------------------------输出SALARY_MILLIONS=26.5或者30.96的行的信息:")
print(data[data.SALARY_MILLIONS.isin([26.5, 30.96])])
print(data.isin([54]))
"""1.data.query("条件1&条件2")可以搜寻的是范围,也可以搜寻指定的值,并且返回的是整个行的信息
2.data.列名.isin(【value1,value2...】)是查找指定列值为value1,value2..的行,如果是这几个值,那么返回True,否返回False
3.如果isin想返回符合条件的行的信息,可以 data【 data.列.isin([value1,value2...])】
4.对于query函数的写法,query("整个条件都在一个引号中"),不是("条件1")&("条件2")
5.isin()函数的value值要用中括号括起来
"""
print("============================================================================================================")
# 7.3统计运算
# 7.3.1统计函数
print("AGE中的最大值为{}".format(data["AGE"].max()))
print("AGE中的最大值所在的位置为{}".format(data["AGE"].idxmax(axis=0)))
print("AGE中的最小值所在的位置为{}".format(data["AGE"].idxmin(axis=0)))
print("AGE中的方差为{}".format(data["AGE"].var()))
print("AGE中的标准差为{}".format(data["AGE"].std()))
print("AGE的总和为{}".format(data["AGE"].sum()))
print("AGE中的平均值为{}".format(data["AGE"].mean()))
# 7.3.2整体的统计函数
print("整体的情况如下:")
print(data.describe())
# 7.3.3累计统计函数
print("DRPM列的累计加和为:")
print(data.DRPM.cumsum())
print("DRPM列的累计乘积为:")
print(data.DRPM.cumprod())
print("DRPM列的累计最大值为:")
print(data.DRPM.cummax())
print("DRPM列的累计最小值为:")
print(data.DRPM.cummin())
# 累计函数+画图
print(data_1.DRPM.cumsum())
data_1.DRPM.cumsum().plot(x=data.index)
plt.show()
# 8.自定义运算
def fun(x):
x = data.DRPM.max() - data.DRPM.min()
return x
k1 = data.apply(fun)
k2=data.apply(lambda x:data.DRPM-data.DRPM.min(),axis=1)
print(k1)
print(k2)