首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

pandas多级索引骚操作!

比如,下面这个数据是高考录取分数线,行索引是地区、学校,索引是年份、专业,分别对应1级和2级索引,因此共有四个维度。 1、多层级索引创建 多级索引创建分两种情况。...因为两种情况建立多级索引方法不同,下面分情况来介绍。 01 新建多级索引 当只有数据没有索引时,我们需要指定索引值,比如下图。...这种方式生成索引和我们上面想要形式不同,因此对行索引不适用,但是我们发现索引column目前还没指定,此时是默认1,2,3,4,进一步发现这里索引是符合笛卡尔积形式,因此我们用from_product...,pro], names=['年份','专业']) # 对df行索引、索引赋值 df.index = mindex df.columns = mcol display(df) 02 从数据中获取多级索引...07 多级索引拼接 除此外,对于多层级索引而言,我们有时需要将多层级进行拼接,此时我们可以借助to_flat_index函数,它可以将多级索引放在一起(相当于from_tuples逆操作)。

76130

Python-科学计算-pandas-11-df获取特定行或者

系统:Windows 7 语言版本:Anaconda3-4.3.0.1-Windows-x86_64 编辑器:pycharm-community-2016.3.2 pandas:0.19.2 这个系列讲讲...Python科学计算及可视化 今天讲讲pandas模块 从Dataframe获取特定行或者数据,生成一个列表 Part 1:目标 ?...import pandas as pd dict_1 = {"time": ["2019-11-02", "2019-11-03", "2019-11-04", "2019-11-05",...输出列,包括两种方法,从结果上来看没有什么区别,具体有啥区别,欢迎留言来分享 df_1["time"].values.tolist(),格式:df[列名].values.tolist() df_1["time..."].tolist(),格式:df[列名].tolist() 输出行,本文中其实还是采用输出列方式,即先将原来df_1转置再输出列信息,df_2 = df_1.T

2K10

盘点一个Pandas提取Excel包含特定关键词行(下篇)

一、前言 前几天在Python白银交流群【上海新年人】问了一个Pandas数据提取问题,上一篇中已经给出了代码,粉丝自己可能还没有领悟明白,一用就废,遇到了问题。...他代码照片如下图: 这个代码这么写,最后压根儿就没有得到他自己预期结果,遂来求助。这里又回归到了他自己最开始需求澄清!!!论需求表达清晰重要性!...二、实现过程 后来【莫生气】给了一份代码,如下图所示: 本以为顺利地解决了问题,但是粉丝又马上增改需求了,如下图所示: 真的,代码写,绝对没有他需求改快。得亏他没去做产品经理,不然危矣!...能给你做出来,先实现就不错了,再想着优化事呗。 后来【莫生气】给了一个正则表达式写法,总算是贴合了这个粉丝需求。 如果要结合pandas的话,可以写为下图代码: 至此,粉丝不再修改需求。...这篇文章主要盘点了一个Pandas数据提取问题,文中针对该问题,给出了具体解析和代码实现,帮助粉丝顺利解决了问题。 最后感谢粉丝【上海新年人】提出问题,感谢【鶏啊鶏。】

21910

盘点一个Pandas提取Excel包含特定关键词行(上篇)

一、前言 前几天在Python白银交流群【上海新年人】问了一个Pandas数据提取问题,问题如下:大佬们,请教个小问题,我要查找某中具体值,譬如df[df['作者'] == 'abc'],但实际上这样子我找不到...ABC,因为对方实际是小写abc。...给了一个指导,如下所示: 全部转大写或者小写你就不用考虑了 只是不确定你实际代码场景。后来【论草莓如何成为冻干莓】给了一份代码,如下图所示: 顺利地解决了粉丝问题。...但是粉丝需求又发生了改变,下一篇文章我们一起来看看这个“善变”粉丝提问。 三、总结 大家好,我是皮皮。...这篇文章主要盘点了一个Pandas数据提取问题,文中针对该问题,给出了具体解析和代码实现,帮助粉丝顺利解决了问题。

19410

盘点一个Pandas提取Excel包含特定关键词行(中篇)

一、前言 前几天在Python白银交流群【上海新年人】问了一个Pandas数据提取问题,但是粉丝又改需求了,需求改来改去,就是没个定数。 这里他最新需求,如上图所示。...他意思在这里就是要上图中最下面这3个。 二、实现过程 后来【论草莓如何成为冻干莓】给了一份代码,如下图所示: 顺利地解决了粉丝问题。...可以看到,代码刚给出来,但是粉丝需求又发生了改变,不过不慌,这里又给出了对应代码,如下图所示: 一看就会,一用就废,粉丝自己刚上手,套用到自己数据里边,代码就失灵了。...下一篇文章,我们再来看这位粉丝新遇到问题。 三、总结 大家好,我是皮皮。这篇文章主要盘点了一个Pandas数据提取问题,文中针对该问题,给出了具体解析和代码实现,帮助粉丝顺利解决了问题。...最后感谢粉丝【上海新年人】提出问题,感谢【鶏啊鶏。】、【论草莓如何成为冻干莓】给出思路,感谢【莫生气】等人参与学习交流。

14710

Pandas 查找,丢弃值唯一

前言 数据清洗很重要,本文演示如何使用 Python Pandas 来查找和丢弃 DataFrame 中值唯一,简言之,就是某数值除空值外,全都是一样,比如:全0,全1,或者全部都是一样字符串如...:已支付,已支付,已支付… 这些大多形同虚设,所以当数据集很多而导致人眼难以查找时,这个方法尤为好用。...上代码前先上个坑吧,数据空值 NaN 也会被 Pandas 认为是一种 “ 值 ”,如下图: 所以只要把缺失值先丢弃,再统计该唯一值个数即可。...代码实现 数据读入 检测值唯一所有并丢弃 最后总结一下,Pandas 在数据清洗方面有非常多实用操作,很多时候我们想不到只是因为没有接触过类似的案例或者不知道怎么转换语言描述,比如 “...值唯一 ” --> “ 除了空值以外唯一值个数等于1 ” ,许多坑笔者都已经踩过了,欢迎查看我其余文章,提建议,共同进步。

5.6K21

数据处理第一节:选取基本到高级方法选取列名

根据列名特点选择 如果你有很多具有类似列名,你可以通过在select语句中添加starts_with(),ends_with()或contains()来使用匹配。...根据正则表达式选择 以上辅助函数都是使用精确模式匹配。 如果你有列名模式并不精确相同,你可以在matches()中使用任何正则表达式。...根据预先确定列名选择 还有另一个选项可以避免连续重新输入列名:one_of()。 您可以预先设置列名,然后在select()语句中通过将它们包装在one_of()中或使用!!运算符来引用它们。...列名 有时候列名称本身需要进行更改: 重命名列 如果您将使用select()语句,则可以在select函数中直接重命名。...格式化所有列名 select_all()函数允许更改所有,并将函数作为参数。如果想以大写形式获取所有列名,可以使用toupper(),同样可以使用小写tolower()。

3K20

4个解决特定任务Pandas高效代码

在本文中,我将分享4个在一行代码中完成Pandas操作。这些操作可以有效地解决特定任务,并以一种好方式给出结果。 从列表中创建字典 我有一份商品清单,我想看看它们分布情况。...,这是Pandas一维数据结构,然后应用value_counts函数来获得在Series中出现频率唯一值,最后将输出转换为字典。...(data, "data") Explode函数 如果有一个与特定记录匹配项列表。...我们以这个df为例 使用explosion函数并指定列名: df_new = df.explode(column="data").reset_index(drop=True) reset_index会为...如果我们想要使用3,我们可以链接combine_first函数。下面的代码行首先检查a。如果有一个缺失值,它从B中获取它。如果B中对应行也是NaN,那么它从C中获取值。

18810

Pandas 进行数据处理系列 二

( Nan ),排序时候会将其排在末尾 基本用法 数据表信息查看 df.shape维度查看df.info()数据表基本信息,包括围度、列名、数据格式、所占空间df.dtypes每一数据格式df[‘...[‘b’].unique()查看某一唯一值df.values查看数据表值df.columns查看列名df.head()查看默认前 10 行数据df.tail()查看默认后 10 行数据 数据表清洗...df.rename(columns={‘category’: ‘category-size’})更改列名df[‘city’].drop_duplicates()删除后出现重复值df[‘city’].drop_duplicates...df.set_index('id') 按照特定值排序 df.sort_values(by=['age']) 按照索引排序 df.sort_index() 如果 pr 值大于 3000 , group...,是多级索引,可以重新定义索引数据 import pandas as pd df = pd.DataFrame({'Country': ['China', 'China', 'India', 'India

8.1K30

Pandas

进行切片,对行指定要使用索引或者条件,对索引必须使用列名称,如果有多,则还需要借助[]将列名称括起来。...),除了指明axis对行或者标签名字进行调整以外,还可以写成类似于index=mapper形式,默认情况下,mapper匹配不到值不会报错 更改 DataFrame 中数据 更改更改值可以借助访问...] = 3#更改符合条件记录值 删除行或者需要借助 drop 函数(要调整 inplace 参数,感觉这个函数主要是用来不显示某些)。...='raise') #labels接收单个列名或者多个列名列表或者索引或者行索引。...中列名作为列名称为’variable’取值,'value’列为原对应取值一个df。

9.1K30

Pandas进阶语法

注意 取index多级索引:构造时候是zip对,所以这样取 取column多级索引:构造时候是第一层和第一层数量一致,取时候df.iloc[1:]把第一行去掉再去 pd.to_datetime()...很重要,可以把str日期转化为datetime 也可以这样取 ix 可以自适应loc iloc 但不建议用 apply 可赋值也可过滤 新增列直接 df['列名'] = data 就可以 删除 df.remove...('列名'),插入用appenf/insert 取 set_index 这个方法很有用,可将columns转化为index 布尔索引 取行取 loc:对index直接操作行操作 loc[:, column...]:对操作 iloc:对行号直接操作 iloc[:, column_index]:对操作 iat:对单值进行操作 ./[]:对进行操作 多层索引 生成多级索引方式 columns 多层索引 注意第一层数量要和第二层一致...timedelta可设置天(d),时(h),分钟(m),秒(s),ms,us query to_datetime 该方法可精确过滤时间 str str具备Python str所有方法,详细pandas

54630

Python Excel数据简单处理记录

Python Excel数据简单处理记录 正在备研大三把不少东西忘一干二净我,花了两个小时对Pythonpandas库进行复健最后实现老师那边提出要求,这里是一些记录 要提取Excel文件中行...,可以使用pandas库对数据进行处理 直接通过pandas库获取数据 import pandas as pd # 读取Excel文件 df = pd.read_excel('XXXX.xls') #...打印表格数据 print(df) # 提取特定数据 column_data = df['题目'] # 提取特定数据 row_data = df.loc[row_index] # 遍历所有行 for...index, row in df.iterrows(): # 处理每一行数据 print(row['题目']) emmm…..直接提出出来文件实际上是只有题目这一内容脚本需要进一步更改...{index}\n" for column_name, value in row_data.iteritems(): # 如果不为空,则输出列名和对应值到

11310
领券