楼主: CDA网校
15857 34

[数据挖掘工具] 10个常用的Python数据分析方法 [推广有奖]

回帖奖励 260 个论坛币 回复本帖可获得 5 个论坛币奖励! 每人限 1 次

管理员

已卖:189份资源

泰斗

4%

还不是VIP/贵宾

-

威望
3
论坛币
120347 个
通用积分
11135.8062
学术水平
278 点
热心指数
286 点
信用等级
253 点
经验
229028 点
帖子
6989
精华
19
在线时间
4389 小时
注册时间
2019-9-13
最后登录
2026-1-22

初级热心勋章

楼主
CDA网校 学生认证  发表于 2022-3-28 10:06:05 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
数据科学家的日常工作涉及各种任务,例如数据预处理、数据分析、机器学习模型创建、模型部署。

如果您开始成为数据科学家的旅程,那么第一步就是掌握数据操作的技能,因为几乎每个数据科学项目都需要它。数据操作从读取您的数据并将其转换为您可以从数据中回答您的问题的形式开始。Python 编程语言具有为数据操作和数据分析工作编写的Pandas 库。

在这篇博客中,我将概述每个有抱负的数据科学家都应该知道的 10 大 Python(Pandas)操作:

1、阅读数据集:数据是每个分析的组成部分。了解如何从不同的文件格式(例如:csv、excel、文本等)读取数据是您作为数据科学家应该擅长的第一步。下面是如何使用 pandas 读取包含 Covid-19 数据的 csv 文件的示例。
  1. import pandas as pd
  2. countries_df = pd.read_csv('C:/Users/anmol/Desktop/Courses/Python for Data Science/Code/countries_data.csv')
  3. # 查看数据框的前 5 行
  4. countries_df.head()
复制代码
以下是 countries_df.head() 的输出,我们可以使用它查看数据框的前 5 行:
1_6uh-zArgTuEg8J07UZCN4g.png
数据框的前 5 行

2. 汇总统计: 一旦您阅读了数据集,下一步就是通过查看NewConfirmed、TotalConfirmed等数字列的计数、均值、标准差(std)、第25个百分位数等数据汇总来了解数据等以及国家,国家代码等分类列的频率,最高出现值等。
使用 describe 函数,我们可以得到数据集连续变量的摘要,如下所示:
  1. countries_df.describe()
复制代码
1_5DfS3zlWyhp40r2WQe9SRA.png
在 describe 函数中,我们可以设置参数“include = 'all'”来获取连续变量和分类变量的摘要。
  1. countries_df.describe(include = 'all')
复制代码
1_5DfS3zlWyhp40r2WQe9SRA.png
想深入了解用于数据分析的 python 吗?您可以按照官方 python 文档进行操作,也可以注册我的cda网校课程。ps:https://edu.cda.cn/goods/show/365?targetId=1307&preview=0

3. 数据选择和过滤:分析不需要数据集的所有行和列。您需要选择感兴趣的列并根据您要回答的问题过滤一些行。

例如,我们可以使用以下代码选择 Country 和 NewConfirmed 列:
  1. countries_df[['Country','NewConfirmed']]
复制代码
1_gNyDqQ27_X7Tr4ie-HZhwg.png
我们还可以将美国的数据过滤为国家。使用 loc,我们可以根据一些值过滤列,如下所示:
  1. countries_df.loc[countries_df['Country'] == 'United States of America']
复制代码
1_yYto6WEVJMK7bfZKumJKfQ.png
4. 聚合:在不同的变量分组中查找数字汇总,例如计数、总和、均值等是数据聚合。这是数据科学家最常执行的任务之一。

我们可以使用聚合找到各国的 NewConfimed 病例总数。使用 groupby 和 agg 函数执行聚合。在 groupby 函数中,我们提供了要执行聚合的级别(Country 列),在聚合函数中,我们提供了要对列执行的列名(NewConfirmed)和数学运算(sum)。
  1. countries_df.groupby(['Country']).agg({'NewConfirmed':'sum'})
复制代码
1_WxYuXnYUFO0oFe58-EjEiQ.png
5. Join :使用 Join 操作将 2 个数据集组合成一个数据集。很多时候,不同的数据集中存在不同的信息,例如,一个数据集可能包含不同国家/地区的 Covid-19 病例数,另一个数据集可能包含不同国家/地区的纬度和经度信息。现在,如果我们需要结合这两个信息,那么我们可以执行如下所示的连接操作:
  1. countries_lat_lon = pd.read_excel('C:/Users/anmol/Desktop/Courses/Python for Data Science/Code/countries_lat_lon.xlsx')

  2. # 两个表链接 : countries_df 和 countries_lat_lon
  3. # 示例 : pd.merge(left_df, right_df, on = 'on_column', how = 'type_of_join')
  4. joined_df = pd.merge(countries_df, countries_lat_lon, on = 'CountryCode', how = 'inner')
  5. joined_df
复制代码
1_iOK2cRJk1SFSfOusZUwJkw.png
6. 内置函数 :了解数学内置函数,如 min()、max()、mean()、sum() 等,对于执行不同的分析非常有帮助。我们可以通过调用它们直接在数据帧上应用这些函数。这些函数可以在列上或在聚合函数中独立使用,如下所示:
  1. countries_df['NewConfirmed'].sum()
  2. # Output : 6,631,899

  3. countries_df.groupby(['Country']).agg({'NewConfirmed':'sum'})

  4. # Output
  5. #                  NewConfirmed
  6. #Country        
  7. #Afghanistan     75
  8. #Albania           168
  9. #Algeria            247
  10. #Andorra            0
  11. #Angola             53
复制代码
7. 用户自定义函数 :我们自己编写的函数是用户自定义函数。我们可以在需要时通过调用该函数来执行这些函数中的代码。例如,我们可以创建一个函数来添加 2 个数字,如下所示:
  1. def addition(num1, num2):
  2.     return num1+num2

  3. print(addition(1,2))
  4. #output : 3
复制代码
8. Pivot:Pivot 是将一列行内的唯一值转换为多个新列。这是先进的数据处理技术。在 Covid-19 数据集上使用 pivot_table() 函数,我们可以将国家名称转换为单独的新列:
  1. pivot_df = pd.pivot_table(countries_df,  columns = 'Country', values = 'NewConfirmed')
  2. pivot_df
复制代码
1_PWC6nScdzjg6Hr_Ro3KXMw.png
9.遍历数据框:很多时候需要遍历数据框的索引和行。我们可以使用 iterrows 函数遍历数据框:
  1. for index, row in countries_df.iterrows():
  2.     print('Index is ' + str(index))
  3.     print('Country is '+ str(row['Country']))
  4.   
  5. # Output :
  6. # Index is 0
  7. # Country is Afghanistan
  8. # Index is 1
  9. # Country is Albania
  10. # .......
复制代码
10. 字符串操作:很多时候我们处理数据集中的字符串列,在这种情况下,了解一些基本的字符串操作很重要,例如如何将字符串转换为大写、小写以及如何查找字符串的长度在一列中。
  1. countries_df['Country_upper'] = countries_df['Country'].str.upper()

  2. countries_df['CountryCode_lower']=countries_df['CountryCode'].str.lower()

  3. countries_df['len'] = countries_df['Country'].str.len()

  4. countries_df.head()
复制代码
1_UuWTP38bJsAaXttt7ALKmg.png
知道如何执行这 10 项操作将满足您近 70% 的数据操作需求。最后,如果你想学习更多关于数据分析的内容,你可以点击下方地址:https://edu.cda.cn/course/explore/cda_public?orderBy=recommendedSeq
题库
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:python 数据分析 Data Science Afghanistan recommended

已有 1 人评分经验 收起 理由
wwqqer + 100 精彩帖子

总评分: 经验 + 100   查看全部评分

沙发
Studio-R 在职认证  发表于 2022-3-28 10:10:45

回帖奖励 +5 个论坛币

常用pandas操作

藤椅
Studio-R 在职认证  发表于 2022-3-28 10:11:09
数据清洗必备

板凳
Studio-R 在职认证  发表于 2022-3-28 10:11:22

报纸
Studio-R 在职认证  发表于 2022-3-28 10:12:39
  1. for index, row in countries_df.iterrows():
  2.     print('Index is ' + str(index))
  3.     print('Country is '+ str(row['Country']))
复制代码

地板
lxb1404 发表于 2022-3-28 10:35:43

回帖奖励 +5 个论坛币

感谢楼主分享~

7
ktv54 发表于 2022-3-28 11:29:16

回帖奖励 +5 个论坛币

感谢楼主分享~

8
leyuanshun 发表于 2022-3-28 11:35:01

回帖奖励 +5 个论坛币

赞赞,感谢分享

9
xjg 发表于 2022-3-28 11:56:17

回帖奖励 +5 个论坛币

10
f62s 发表于 2022-3-28 12:03:19

回帖奖励 +5 个论坛币

提示: 作者被禁止或删除 内容自动屏蔽

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-24 19:13