脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服务器之家 - 脚本之家 - Python - Python数据处理的三个实用技巧分享

Python数据处理的三个实用技巧分享

2022-11-20 13:40Python学习与数据挖掘 Python

数据处理无所不在,掌握常用技巧,事半功倍。这篇文章将使用Pandas开展数据处理分析,总结其中常用、好用的数据分析技巧,感兴趣的可以学习一下

我使用的 Pandas 版本如下,顺便也导入 Pandas 库。

?
1
2
3
>>> import pandas as pd
>>> pd.__version__
'0.25.1'

在开始前先确保解释器和数据集在同一目录下:

?
1
2
3
4
>>> import os
>>> os.chdir('D://source/dataset') # 这是我的数据集所在目录
>>> os.listdir() # 确认此目录已经存在 IMDB-Movie-Data 数据集
['drinksbycountry.csv', 'IMDB-Movie-Data.csv', 'movietweetings', 'titanic_eda_data.csv', 'titanic_train_data.csv']

准备工作就位后,正式开始数据处理技巧之旅。

1 Pandas 移除某列

导入数据

?
1
2
3
4
5
6
>>> df = pd.read_csv("IMDB-Movie-Data.csv")
>>> df.head(1) # 导入并显示第一行
   Rank                    Title                    Genre  ...   Votes Revenue (Millions) Metascore
0     1  Guardians of the Galaxy  Action,Adventure,Sci-Fi  ...  757074             333.13      76.0
 
[1 rows x 12 columns]

使用 pop 方法移除指定列:

?
1
>>> meta = df.pop("Title").to_frame() # 移除 Title 列

确认是否已被移除:

?
1
2
3
4
5
>>> df.head(1) # df 变为 11列
   Rank                    Genre  ... Revenue (Millions) Metascore
0     1  Action,Adventure,Sci-Fi  ...             333.13      76.0
 
[1 rows x 11 columns]

2 统计标题单词数

pop 后得到 meta,显示 meta 前 3 行:

?
1
2
3
4
5
>>> meta.head(3)
                     Title
0  Guardians of the Galaxy
1               Prometheus
2                    Split

标题是由单词组成,中间用空格分隔。

?
1
2
3
4
5
6
7
# .str.count(" ") + 1 得到单词个数
>>> meta["words_count"] = meta["Title"].str.count(" ") + 1
>>> meta.head(3) # words_count 列代表单词个数
                     Title  words_count
0  Guardians of the Galaxy            4
1               Prometheus            1
2                    Split            1

3 Genre 频次统计

下面统计电影 Genre 的频次,

?
1
>>> vc = df["Genre"].value_counts()

下面显示电影 Genre 的 Top5 ,最高频为出现 50 次的 Action,Adventure,Sci-Fi 类,次之为 48 次的 Drama 类:

?
1
2
3
4
5
6
7
>>> vc.head()
Action,Adventure,Sci-Fi    50
Drama                      48
Comedy,Drama,Romance       35
Comedy                     32
Drama,Romance              31
Name: Genre, dtype: int64

展示 Top5 的饼状图:

?
1
2
3
4
>>> import matplotlib.pyplot as plt
>>> vc[:5].plot(kind='pie')
<matplotlib.axes._subplots.AxesSubplot object at 0x000001D65B114948>
>>> plt.show()

Python数据处理的三个实用技巧分享

到此这篇关于Python数据处理的三个实用技巧分享的文章就介绍到这了,更多相关Python 数据处理内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://blog.csdn.net/weixin_38037405/article/details/123869850

延伸 · 阅读

精彩推荐
  • Pythonpython中base64加密解密方法实例分析

    python中base64加密解密方法实例分析

    这篇文章主要介绍了python中base64加密解密方法,实例分析了base64加密解密的原理、用途与相关使用技巧,需要的朋友可以参考下...

    不吃皮蛋3602020-06-30
  • Pythonpython的中异常处理机制

    python的中异常处理机制

    这篇文章主要介绍了python的中异常处理的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧...

    章鱼喵_3672021-03-30
  • PythonPython抽象基类的定义与使用

    Python抽象基类的定义与使用

    我们写Python基本不需要自己创建抽象基类,而是通过鸭子类型来解决大部分问题。《流畅的Python》作者使用了15年Python,但只在项目中创建过一个抽象基类...

    dongfanger11652021-10-18
  • PythonPython中unittest的数据驱动详解

    Python中unittest的数据驱动详解

    这篇文章主要介绍了Python中unittest的数据驱动详解,数据驱动测试,是一种单元测试框架,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要...

    weixin_722060764862022-08-26
  • Python基于OpenCV4.2实现单目标跟踪

    基于OpenCV4.2实现单目标跟踪

    这篇文章主要介绍了如何和何时使用OpenCV 4.2中可用的8种不同的跟踪器- BOOSTING, MIL, KCF, TLD, MEDIANFLOW, GOTURN, MOSSE和CSRT,并用他们实现单目标跟踪,需要的可以...

    求则得之,舍则失之8232022-10-26
  • Pythonpython3中os.path模块下常用的用法总结【推荐】

    python3中os.path模块下常用的用法总结【推荐】

    这篇文章主要介绍了python3中os.path模块下常用的用法总结 ,需要的朋友可以参考下 ...

    renpingsheng9492021-04-02
  • PythonPython算法之图的遍历

    Python算法之图的遍历

    这篇文章主要介绍了Python算法之图的遍历,涉及遍历算法BFS和DFS,以及寻找图的(强)连通分量的算法等相关内容,具有一定参考价值,需要的朋友可以了解...

    hujiawei (@五道口宅男)2422020-12-18
  • Pythonpython无法识别vim中文代码的解决方案

    python无法识别vim中文代码的解决方案

    这篇文章主要介绍了python无法识别vim中文代码的解决方案,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...

    Takoony7352021-09-22