首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

30 个小例子帮你快速掌握Pandas

让我们做另一使用索引而不是标签示例。 df.iloc [missing_index,-1] = np.nan "-1"是最后一Exit索引。...尽管我们对loc和iloc使用了不同列表示形式,但行值没有改变。原因是我们使用数字索引标签。因此,行标签和索引都相同。 缺失值数量已更改: ? 7.填充缺失值 fillna函数用于填充缺失值。...8.删除缺失值 处理缺失值另一种方法是删除它们。“已退出”中仍缺少值。以下代码将删除缺少任何值行。...df.dropna(axis=0, how='any', inplace=True) axis = 1用于删除缺少。我们还可以为或行具有的非缺失值数量设置阈值。...12.groupby函数 Pandas Groupby函数是一种通用且易于使用函数,有助于获得数据概览。它使探索数据集和揭示变量之间潜在关系变得更加容易。 我们将为groupby函数写几个例子。

10.6K10
您找到你想要的搜索结果了吗?
是的
没有找到

用 Python 对新冠病毒做数据分析,我们得出哪些结论?

第五「Last Update」显示值与「Date」相同,但少数情况下,这些数字稍后会更新。在继续之前,我们先删除这两。...除「Province/State」外,所有都没有空值。进一步分析显示,英国、法国和印度等国省份名称都不见了。在这种情况下,我们不能假设或填充任何主列表中缺少值。让我们转到数字。...数据似乎每天都在不同时间更新。我们可以从时间戳中提取日期并将其用于进一步分析。这将有助于我们保持日期一致。...由于数据是累积,所以我们需要使用 groupby() 和 max() 函数,以获得每个国家报告最大数目。如果我们使用 sum(),则会导致重复计算。...数据证实,迄今为止,中国报告病例最多,481 例死亡病例几乎全部来自中国。但另一方面,中国也有 522 人康复,其次是泰国,有 7 人康复。

1.7K10

Pandas三百题

'].interpolate()) 17-缺失值补全|匹配填充 现在填充 “语言” 缺失值,要求根据 “国家/地区” 值进行填充 例如 《海上钢琴师》国家/地区为 意大利,根据其他意大利国家对应语言来看...使用query提取金牌数+银牌数 大于 15国家 df.query('金牌数+银牌数 > 15') 43 - 筛选值|query(引用变量) 使用 query 提取 金牌数 大于 金牌均值国家 gold_mean...mean() df.groupby("district")['salary'].mean() 2 - 分组统计|取消索引 重新按照上一题要求进行分组,但不使用 district 做为索引 df.groupby...df1.info() 12 - 时间类型转换 将 df1 和 df2 日期 转换为 pandas 支持时间格式 df1['日期'] = pd.to_datetime(df1['日期']) df2...D').last() 28 - 日期重采样|低频 -> 高频 将 df2 5分钟 数据改为 3分钟,缺失数据向前填充 df_3min = df2.set_index('时间').resample('

4.6K22

数据科学 IPython 笔记本 7.12 透视表

透视表将简单数据作为输入,并将条目分组为二维表格,该表提供数据多维汇总。 数据透视表和GroupBy之间区别有时会引起混淆;它帮助我将透视表视为GroupBy聚合多维版本。...使用GroupBy词汇表,我们可以继续执行这样过程:我们分组舱位和性别,选择生存,应用平均聚合,组合生成分组,然后对分层索引取消堆叠,来揭示隐藏多维度。...多层透视表 就像在GroupBy中一样,透视表中分组可以使用多个层次指定,也可以通过多个选项指定。例如,我们可能有兴趣将年龄看作第三个维度。...我们将使用pd.cut函数来填充年龄: age = pd.cut(titanic['age'], [0, 18, 80]) titanic.pivot_table('survived', ['sex',...请注意,由于疾病预防控制中心数据仅包含从 1989 年开始出生月份,因此缺少 20 世纪 90 年代和 21 实际 00 年代。 另一个有趣观点是绘制一年中每天平均出生数。

1K20

数据导入与预处理-第6章-04pandas综合案例

类对象摘要,包括各数据类型、非空值数量、内存使用情况等 all_data.info() 输出为: 检测all_data中是否有重复值 # 检测all_data中是否有重复值 all_data[...(ignore_index=True) all_data.head(10) 输出为: 筛选出项目为篮球运动员并访问“出生日期”一数据 # 筛选出项目为篮球运动员 basketball_data...= all_data[all_data['项目'] == '篮球'] # 访问“出生日期”一数据 basketball_data['出生日期'] 输出为: 修改出生日期 import datetime...'] = basketball_data.loc[:, '出生日期'].replace(i, new_time) # 为保证出生日期一致性,这里统一使用只保留到年份日期 basketball_data.loc...male_data.boxplot(column=['身高/cm']) plt.show() 输出为: 使用箱形图检测女篮运动员身高一是否有异常值 # 使用箱形图检测女篮运动员身高一是否有异常值

83020

Pandas_Study02

复杂 使用向前 或 向后 填充数据,依旧使用fillna 方法,所谓向前 是指 取出现NaN值前一或前一行数据来填充NaN值,向后同理 # 在df e 这一上操作,默认下按行操作,向前填充数据...,即取e中最近一个不为NaN值来填充接下去NaN值 df["e"].fillna(method = 'ffill',inplace=True) # 原理同上,只是取e中最近一个不为NaN值并且它上一个数值是...结果一样,但每数据排列会有区别,因为结果表会先显示左表结果 print choose.merge(course, how = "right") pandas 数据分组 1. groupby 方法..., "supplier" : np.max}) 3. transform() 方法 可以作用于groupby之后每个组所有数据,之前aggregate函数只能用于分组后组数据。...1. datetime 模块 Pythondatetime标准模块下 date子类可以创建日期时间序列数据 time子类可创建小时分时间数据 datetime子类则可以描述日期小时分数据 import

17910

Pandas之实用手册

使用数字选择一行或多行:也可以使用标签和行号来选择表任何区域loc:1.3 过滤使用特定值轻松过滤行。...最简单方法是删除缺少行:fillna()另一种方法是使用(例如,使用 0)填充缺失值。1.5 分组使用特定条件对行进行分组并聚合其数据时。...例如,按流派对数据集进行分组,看看每种流派有多少听众和剧目:Pandas 将两个“爵士乐”行组合为一行,由于使用了sum()聚合,因此它将两位爵士乐艺术家听众和演奏加在一起,并在合并爵士乐中显示总和...通过告诉 Pandas 将一除以另一,它识别到我们想要做就是分别划分各个值(即每行“Plays”值除以该行“Listeners”值)。...=True)按照groupsize排序另一种写法"""alternate syntax to sort groupby objects by size of groups"""df[df['result

13610

利用 pandas 和 xarray 整理气象站点数据

,包括特征值替换、插入日期(利用 apply 函数逐行处理,这一步很费时间,暂时也没想到更快方法),精度转换 def PreProcess(df_t): # 每读取一个文本文件做一步预处理...df_t.loc[df_t['20-20时降水量'] >= 29999, '20-20时降水量'] = np.nan # 替换掉所有特征值 df_t.insert( # 插入日期,此时并不以此为索引...转换为 nc 文件 到此为止,上面得到文件已经可以用于基本分析了,直接筛选站点、指定日期即可。 但是我自己还是习惯了直接用 xarray 处理文件,因此还是做了进一步处理。...LatLng_Rad2Dec) elev = stainfo.loc[ind, '海拔']/10. prov = stainfo.loc[ind, '省份'] nc 文件合并,沿着站点合并,取并集,个别站点缺少时间坐标自动填充...').mean() TibetWindAnom = TibetWind.groupby( 'time.month') - TibetWind.groupby('time.month').mean

9.3K41

Python 数据分析(PYDA)第三版(五)

一种方法是访问 data1 并使用 key1 (一个 Series)调用 groupby: In [16]: grouped = df["data1"].groupby(df["key1"]) In...但是,您可能希望根据使用不同函数进行聚合,或者一次使用多个函数。幸运是,这是可能,我将通过一些示例来说明。...在清理缺失数据时,有些情况下您将使用dropna删除数据观察值,但在其他情况下,您可能希望使用固定值或从数据中派生某个值填充空(NA)值。...它通过一个或多个键对数据表进行聚合,将数据排列在一个矩形中,其中一些组键沿行排列,另一些沿排列。...pandas 通常面向处理日期数组,无论是作为轴索引还是数据框中。pandas.to_datetime方法解析许多不同类型日期表示。

7000

利用 pandas 和 xarray 整理气象站点数据

,包括特征值替换、插入日期(利用 apply 函数逐行处理,这一步很费时间,暂时也没想到更快方法),精度转换 def PreProcess(df_t): # 每读取一个文本文件做一步预处理...df_t.loc[df_t['20-20时降水量'] >= 29999, '20-20时降水量'] = np.nan # 替换掉所有特征值 df_t.insert( # 插入日期,此时并不以此为索引...转换为 nc 文件 到此为止,上面得到文件已经可以用于基本分析了,直接筛选站点、指定日期即可。 但是我自己还是习惯了直接用 xarray 处理文件,因此还是做了进一步处理。...LatLng_Rad2Dec) elev = stainfo.loc[ind, '海拔']/10. prov = stainfo.loc[ind, '省份'] nc 文件合并,沿着站点合并,取并集,个别站点缺少时间坐标自动填充...').mean() TibetWindAnom = TibetWind.groupby( 'time.month') - TibetWind.groupby('time.month').mean

5.3K12

Pandas 数据分析技巧与诀窍

它是一个轻量级、纯python库,用于生成随机有用条目(例如姓名、地址、信用卡号码、日期、时间、公司名称、职位名称、车牌号码等),并将它们保存在pandas dataframe对象中、数据库文件中...填充缺少值: 与大多数数据集一样,必须期望大量空值,这有时会令人恼火。...所以这里我们有两,分别称为“标签”和“难度”。我想将“MCQ”用于任何空“tags”值,将“N”用于任何空“difficulty”值。...sample = data.sample(n=2000) sorted_sample = sample.sort_values(by=[‘id’]) 使用GroupBy对记录分组: 如果您想知道每个用户...groupbyExample = data.groupby(‘user_id’)[‘scores’].mean() 3 结论 因此,到目前为止,您应该能够创建一个数据帧,并用随机数据填充它来进行实验

11.5K40

时间序列重采样和pandasresample方法介绍

常用方法包括平均、求和或使用插值技术来填补数据中空白。 在上采样时,可能会遇到原始时间戳之间缺少数据点情况。插值方法,如线性或三次样条插值,可以用来估计这些值。...2023-01-01', end='2023-12-31', freq='D'), 'value': range(365)} df = pd.DataFrame(data) # 将日期设置为索引...()方法对'index'执行每周重采样,计算每周'C_0'和。...4、汇总统计数据 重采样可以执行聚合统计,类似于使用groupby使用sum、mean、min、max等聚合方法来汇总重新采样间隔内数据。这些聚合方法类似于groupby操作可用聚合方法。...所以需要对间隙数据进行填充填充一般使用以下几个方法: 向前填充-前一个可用填充缺失值。可以使用limit参数限制正向填充数量。

55230

Python~Pandas 小白避坑之常用笔记

删除(城市, 地区) print(sheet1.head(5)) 四、数据提取、loc、iloc使用 1.根据列名提取数据 import pandas as pd sheet1 = pd.read_excel..., value=填充值 # sheet1['年度'] = sheet1['日期'].dt.year # 根据日期字段 新增年份 # sheet1['季度'] = sheet1['日期'].dt.quarter...'].dt.year # 根据日期字段 新增年份 sheet1['季度'] = sheet1['日期'].dt.quarter # 根据日期字段 新增季度 # 按年度分组,指定销售额进行求和计算...'].dt.year # 根据日期字段 新增年份 sheet1['季度'] = sheet1['日期'].dt.quarter # 根据日期字段 新增季度 # 针对字段:年度、国家进行分组,求和计算字段...使用,而pandas提供了大量能使我们快速便捷地处理数据函数和方法,续有常用pandas函数会在这篇博客中持续更新。

3.1K30

Pandas tricks 之 transform用法

本文开头例子就是这样。而apply函数返回聚合后行数。例如: ? transform和apply另一个区别是,apply函数可以同时作用于多,而transform不可以。...上图中例子,定义了处理两函数,在groupby之后分别调用apply和transform,transform并不能执行。...以上三种调用apply方式处理两差,换成transform都会报错。 利用transform填充缺失值 transform另一个比较突出作用是用于填充缺失值。举例如下: ?...用平均值填充是一种处理缺失值常见方式。此处我们可以使用transform对每一组按照组内平均值填充缺失值。 ?...小结: transform函数经常与groupby一起使用,并将返回数据重新分配到每个组去。利用这一点可以方便求占比和填充缺失值。但需要注意,相比于apply,它局限在于只能处理单列数据。

2K30

用Python实现excel 14个常用操作,Vlookup、数据透视表、去重、筛选、分组等

利润一存在于df2表格中,所以想知道df1每一个订单对应利润是多少。用excel的话首先确认订单明细号是唯一值,然后在df1新增一写:=vlookup(a2,df2!...#行数小于index行数说明有缺失值,这里客户名称329<335,说明有缺失值 sale.info() 需求:用0填充缺失值或则删除有客户编码缺失值行。...若是分类变量,根据业务逻辑去填充准确性比较高。比如这里需求填充客户名称缺失值:就可以根据存货分类出现频率最大存货所对应客户名称去填充。...这里我们用简单处理办法:用0填充缺失值或则删除有客户编码缺失值行。...,我就列举了14个自己比较常用,若还想实现哪些操作可以评论一起交流讨论,另外我自身也知道我写python不够精简,惯性使用loc。

2.4K10

数据导入与预处理-第6章-02数据变换

columns:表示新生成对象索引。 values :表示填充新生成对象值。 要想了解pivot()函数,可以先了解下pivot_table()函数。...pivot_table透视过程如下图: 假设某商店记录了5月和6月活动期间不同品牌手机促销价格,保存到以日期、商品名称、价格为标题表格中,若对该表格商品名称进行轴向旋转操作,即将商品名称一唯一值变换成索引...,将出售日期唯一值变换成行索引。...,商品一唯一数据变换为索引: # 将出售日期唯一数据变换为行索引,商品一唯一数据变换为索引 new_df = df_obj.pivot(index='出售日期', columns='商品名称...输出为: 指定聚合 # 使用agg()方法聚合分组中指定数据 groupby_obj.agg({'a':'max', 'c':'sum', 'e': my_range}) 输出为:

19.2K20
领券