import numpy as npimport pandas as pddf=pd.DataFrame({ 'date': pd.date_range(start='2021-11-20', period=100, freq='D'), 'class': ['A' ,'B','C','D'] * 25, '金额': np.random.randint(10, 100, size=100)})df.head()output
To_period
我们在处理日期数据的时候,有时需要提取月份数据,有时需要提取季度数据。这可以通过to_period() 方法来实现。代码如下
df['年']=df['日期'].dt.to_period('Y')df['月']=df['日期'].dt.to_period('M')df['日']=df['日期'].dt.to_period('D')df['季度']=df['日期'].dt.to_period('Q')df.head()输出
在此基础上,我们可以进一步分析数据,例如
df['month'].value_counts()输出
我们要过滤掉“2021-12”期间的数据,代码如下
df[df['月份']=='2021-12'].head()输出
生成假数据
当我们建模和训练模型时,需要用到大量的数据集。然而很多时候我们会遇到数据量不足的情况。小编之前写过相关教程,使用的是Python。 faker模块或者通过一些深度学习模型生成假数据
pandas模块中也有一些相关的方法来帮助我们解决数据量不足的问题。代码如下
pd.util.testing.makeDataFrame()输出
默认生成的假数据为30行4列。当然,我们也可以指定生成数据的行数和列数。代码如下
pd.util.testing.makeCustomDataframe(nrows=1000,ncols=5)输出
如果我们要创建的数据集中存在缺失值,则会调用makeMissingDataframe() 方法。
pd.util.testing.makeMissingDataframe()输出
如果我们要创建的数据集包含其他类型的数据,例如整数、浮点、时间和日期,则调用makeMixedDataFrame() 方法。
pd.util.testing.makeMixedDataFrame()输出
将数据集导出至压缩包中
众所周知,我们可以方便地将数据集导出为csv文件、json格式文件等,但有时我们想节省存储资源,比如在文件传输过程中,我们想导出为压缩文件包中代码如下
df=pd.util.testing.makeCustomDataframe(nrows=1000, ncols=5)df.shapeoutput
(1000, 5) 我们首先将其存储为csv格式的文件,并查看文件大小。结果是它占用了大约45KB的存储空间。代码如下
导入osos.path.getsize('sample.csv')/1024output
44 如果最后导出成压缩包怎么办?我们看一下文件大小?代码如下
df.to_csv('sample.csv.gz', 压缩='gzip')os.path.getsize('sample.csv.gz')/1024output
14 结果仅占用13KB空间,约为前者的三分之一。当然pandas也可以直接将压缩包读入DataFrame数据集。代码如下
df=pd.read_csv('sample.csv.gz',compression='gzip',index_col=0)df.head()output
一行代码让Pandas提速
很多时候我们想通过pandas中的apply()方法将自定义函数或者一些内部函数应用到DataFrame的每一行。如果行数非常多,处理起来会非常耗时。时间,这里使用的swifter可以自动让apply()方法运行得尽可能快,并且只需要一行代码,例如
本文采摘于网络,不代表本站立场,转载联系作者并注明出处:https://www.iotsj.com//kuaixun/3954.html
用户评论
哇!原来 Pandas 还能这样用,涨姿势了!
有19位网友表示赞同!
这些功能太酷了,可以省下我很多时间!
有14位网友表示赞同!
Pandas 的强大功能,真的让人惊叹!
有9位网友表示赞同!
感谢分享,这些技巧对我的数据分析工作很有帮助!
有5位网友表示赞同!
分享的这些 Pandas 功能,简直是数据分析利器!
有18位网友表示赞同!
学习了,以后可以尝试用这些功能来处理数据了。
有12位网友表示赞同!
Pandas真是一个宝藏库,还有这么多隐藏的功能!
有13位网友表示赞同!
太棒了,以后再也不用为数据处理而头疼了!
有18位网友表示赞同!
这些功能真的太实用了,以后可以用来提高工作效率!
有12位网友表示赞同!
作者真是太厉害了,把 Pandas 的精髓都挖掘出来了!
有14位网友表示赞同!
原来 Pandas 还有这么多隐藏的技巧,学到了!
有8位网友表示赞同!
感觉自己对 Pandas 的理解又深了一层!
有10位网友表示赞同!
这些功能可以帮助我更好地进行数据分析,太感谢了!
有15位网友表示赞同!
期待看到更多关于 Pandas 的分享!
有16位网友表示赞同!
Pandas 真是一个强大的工具,可以做很多事情!
有16位网友表示赞同!
学习了这些功能,感觉自己对数据分析的理解更加深刻了!
有16位网友表示赞同!
收藏了,以后遇到数据处理问题可以参考一下!
有9位网友表示赞同!
太实用了,以后可以用来处理我的数据了!
有16位网友表示赞同!
作者的分享很精彩,让我对 Pandas 的使用有了更深的认识!
有15位网友表示赞同!
这些功能真的太实用了,以后可以用来解决工作中的数据问题!
有6位网友表示赞同!