pandas01

1、生成Seires
import pandas as pd
import numpy as np
import matplotlib as mpl
import matplotlib.pyplot as plt
index=np.arange(1,5)
dat=list("abcde")
mdict=dict(zip(index,dat))
s1=pd.Series(mdict)
s2=pd.Series(index)
2、将Series转化为数据框,并重设索引
d1=s1.to_frame().reset_index()
3、修改数据框的名字
d1.columns=["index","data"]
4、s1和s2根据索引横向合并
pd.concat([s1,s2],axis=1)
5、s1和s2纵向合并
pd.concat([s1,s2],axis=0).reset_index()
6、找到元素 在series A中不在series B中
s1 = pd.Series([1, 2, 3, 4, 5])
s2 = pd.Series([4, 5, 6, 7, 8])
s1[~s1.isin(s2)]
7、两个seiries的并集
np.union1d(s1,s2)
8、两个series的交集
np.intersect1d(s1,s2)
9、s1和s2的非共有集
temp=pd.Series(np.union1d(s1,s2))
temp[~temp.isin(np.intersect1d(s1,s2))]
10、分位数
seed=np.random.RandomState(1)
s4=pd.Series(seed.normal(0,10,100))
np.percentile(s4,q=[0,25,50,75,100])
11、计算Series里的频数
np.random.seed(1)
s5=pd.Series(np.take(list('abcde'), np.random.randint(0,5, size=50)))
s5.value_counts()
12、series中计数排名前2的元素
s5.value_counts().sort_values(ascending=False)[0:2]
13、如何将数字系列分成10个相同大小的组
np.random.seed(1)
s6=pd.Series(np.random.uniform(0,100,5))
s6=s6.append(pd.Series(110)).reset_index()[0]
pd.cut(s6,bins=np.arange(0,111,10),labels=["class"+str(i) for i in range(0,11)])
14、如何将numpy数组转换为给定形状的dataframe
np.random.seed(1)
s7=pd.Series(np.random.uniform(1,10,10))
pd.DataFrame(s7.values.reshape(2,5))
15、如何从一系列中找到2的倍数的数字位置
s8=pd.Series(np.random.randint(0,10,11))
s8[s8%2==0]
np.argwhere(s8%2==0)
16、如何从系列中的给定位置提取项目
s8[[1,2]]
pd.Index(s8)
17、获取元素的位置
s9=pd.Series(list("abcdefghijklmnopqrstyvwxyz"))
wann=["a","g","f"]
[pd.Index(s9).get_loc(i) for i in wann]
18、如何计算真值和预测序列的均方误差
truth=pd.Series(range(10))
pred=pd.Series(range(10))+np.random.normal(0,1,10)
np.mean((truth-pred)**2)
19、如何将系列中每个元素的第一个字符转换为大写
s10=pd.Series(["hello","is","me"])
s10.map(lambda x:x.title())
20、如何计算系列中每个单词的字符数
s10.map(lambda x:len(x))
21、如何计算时间序列数据的差分
pred.diff()
pred.diff().diff()#二次差分
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值