df 的索引列,列名称为 category 和 size pd.DataFrame((x.split('-') for x in df['category']), index...loc函数按标签值进行提取iloc按位置进行提取ix可以同时按标签和位置进行提取 具体的使用见下: df.loc[3]按索引提取单行的数值df.iloc[0:5]按索引提取区域行数据值df.reset_index...()重设索引df=df.set_index(‘date’)设置 date 为索引df[:‘2013’]提取 2013 之前的所有数据df.iloc[:3,:2]从 0 位置开始,前三行,前两列,这里的数据不同去是索引的标签名称...,然后将符合条件的数据提取出来pd.DataFrame(category.str[:3])提取前三个字符,并生成数据表 数据筛选 使用与、或、非三个条件配合大于、小于、等于对数据进行筛选,并进行计数和求和...pr 进行求和 df.query('city' == ['beijing', 'shanghai']).pr.sum() 数据汇总 主要使用 groupby 和 pivote_table 进行处理。
某一列数据计算 data['column_name'].value_counts() 以之前找到的一个前辈的数据为例子,首先我们要获取文件 import pandas as pd data = pd.read_excel...('xxxx.xls') 这里可以单独查看其中的内容 data['nick'],计算其中的大小则使用 data['nick'].value_counts()。...df 的索引列,列名称为 category 和 size pd.DataFrame((x.split('-') for x in df['category']), index...: df.loc[3]: 按索引提取单行的数值 df.iloc[0:5]: 按索引提取区域行数据值 df.reset_index(): 重设索引 df=df.set_index('date'):...设置 date 为索引 df[:'2013']: 提取 2013 之前的所有数据 df.iloc[:3,:2]: 从 0 位置开始,前三行,前两列,这里的数据不同去是索引的标签名称,而是数据所有的位置
每个数组都有一个shape(一个表示各维度大小的元组,即表示有几行几列)和dtype(一个用于说明数组数据类型的对象)。本节将围绕ndarray数组展开。...Pandas基本功能 1、重新索引 Pandas对象的一个方法就是重新索引(reindex),其作用是创建一个新的索引,pandas对象将按这个新索引进行排序。对于不存在的索引值,引入缺失值。...也可以按columns(行)进行重新索引,对于不存在的列名称,将被填充空值。 对于不存在的索引值带来的缺失值,也可以在重新索引时使用fill_value给缺失值填充指定值。...obj.rank() (2)DataFrame数据结构的排序和排名 按索引值进行排列,一列或多列中的值进行排序,通过by将列名传递给sort_index. 5、缺失数据处理 (1)滤出缺失数据 使用data.dropna...(列从0开始计数) 6、汇总和计算描述统计 就是针对数组进行常用的数学和统计运算。大部分都属于约简和汇总统计。 其中有求和(sum)运算、累计(cumsum)运算、平均值(mean)等运算。
'B'].isnull() 7、查看某一列的唯一值: df['B'].unique() 8、查看数据表的值: df.values 9、查看列名称: df.columns 10、查看前5行数据、后5行数据...df_inner的索引列,列名称为category和size pd.DataFrame((x.split('-') for x in df_inner['category']),index=df_inner.index...=True, left_index=True) 五、数据提取 主要用到的三个函数:loc,iloc和ix,loc函数按标签值进行提取,iloc按位置进行提取,ix可以同时按标签和位置进行提取。...1、按索引提取单行的数值 df_inner.loc[3] 2、按索引提取区域行数值 df_inner.iloc[0:5] 3、重设索引 df_inner.reset_index() 4、设置日期为索引...7、适应iloc按位置单独提起数据 df_inner.iloc[[0,2,5],[4,5]] #提取第0、2、5行,4、5列 8、使用ix按索引标签和位置混合提取数据 df_inner.ix[:'2013
这个过程如下所示: 索引在Pandas中有很多用途: 它使通过索引列的查询更快; 算术运算、堆叠、连接是按索引排列的;等等。 所有这些都是以更高的内存消耗和更不明显的语法为代价的。...第二种情况,它对行和列都做了同样的事情。向Pandas提供列的名称而不是整数标签(使用列参数),有时提供行的名称。...首先,你可以只用一个名字来指定要分组的列,如下图所示: 如果没有as_index=False,Pandas会把进行分组的那一列作为索引列。...默认情况下,Pandas会对任何可远程求和的东西进行求和,所以必须缩小你的选择范围,如下图: 注意,当对单列求和时,会得到一个Series而不是一个DataFrame。...pivot失去了关于结果的 "主体" 名称的信息,所以对于 stack 和 melt,我们必须 "提醒" Pandas关于 quantity 列的名称。
Pandas在管理结构数据方面非常方便,其基本功能可以大致概括为一下5类: 数据 / 文本文件读取; 索引、选取和数据过滤; 算法运算和数据对齐; 函数应用和映射; 重置索引。...,DataFrame的每一列(行)都是一个Series,每一列(行)的Series.name即为当前列(或行)索引名。.../test1.CSV') file 测试完文件记录了A~F 6个物品的大小、等级以及重量。...2)Numpy只能存储相同类型的ndarray,Pandas能处理不同类型的数据,例如二维表格中不同列可以是不同类型的数据,一列为整数一列为字符串。...Pandas提供了大量快速便捷地处理数据的函数和方法。
包含值的列将转换为两列:一列用于变量(值列的名称),另一列用于值(变量中包含的数字)。 ? 结果是ID列的值(a,b,c)和值列(B,C)及其对应值的每种组合,以列表格式组织。...当一列爆炸时,其中的所有列表将作为新行列在同一索引下(为防止发生这种情况, 此后只需调用 .reset_index()即可)。...Stack 堆叠采用任意大小的DataFrame,并将列“堆叠”为现有索引的子索引。因此,所得的DataFrame仅具有一列和两级索引。 ? 堆叠名为df的表就像df.stack()一样简单 。...作为另一个示例,当级别设置为0(第一个索引级别)时,其中的值将成为列,而随后的索引级别(第二个索引级别)将成为转换后的DataFrame的索引。 ?...使用联接时,公共键列(类似于 合并中的right_on 和 left_on)必须命名为相同的名称。
Pandas的名称来自于面板数据(panel data)和python数据分析(data analysis)。...这篇文章会介绍一些Pandas的基本知识,偷了些懒其中采用的例子大部分会来自官方的10分钟学Pandas。我会加上个人的理解,帮助大家记忆和学习。...或者以数据库进行类比,DataFrame中的每一行是一个记录,名称为Index的一个元素,而每一列则为一个字段,是这个记录的一个属性。...其中one只有3个值,因此d行one列为NaN(Not a Number)--Pandas默认的缺失值标记。...与此等价,还可以用起始的索引名称和结束索引名称选取数据: df['a':'b'] 有一点需要注意的是使用起始索引名称和结束索引名称时,也会包含结束索引的数据。
# 导入相关库 import numpy as np import pandas as pd 常用的基本功能 当我们构建好了 Series 和 DataFrame 之后,我们会经常使用哪些功能呢?...来介绍个有意思的方法:cumsum,看名字就发现它和 sum 方法有关系,事实上确实如此,cumsum 也是用来求和的,不过它是用来累加求和的,也就是说它得到的结果与原始的 Series 或 DataFrame... 大小相同。...Pandas 支持两种排序方式:按轴(索引或列)排序和按实际值排序。 先来看下按索引排序:sort_index 方法默认是按照索引进行正序排的。...shanghai male Mary 25 guangzhou female James 40 shenzhen male 修改列/索引名称
() 结果: (3)以某列值设置为新的索引 set_index(keys, drop=True) keys : 列索引名成或者列索引名称的列表 drop : boolean, default True...Numpy当中我们已经讲过使用索引选取序列和切片选择,pandas也支持类似的操作,也可以直接使用列名、行名称,甚至组合使用。...(混合索引:下标和名称) 获取行第1天到第4天,[‘open’, ‘close’, ‘high’, ‘low’]这个四个指标的结果: # 使用ix进行下表和名称组合做引 data.ix[0:4, ['open...以上这些函数可以对series和dataframe操作,这里我们按照时间的从前往后来进行累计 排序 # 排序之后,进行累计求和 data = data.sort_index() 对p_change进行求和...所以我们需要知道Pandas如何进行读取和存储JSON格式。
参数: ①分组键是列名: 单个列名直接写(按一列进行分组),多个列名以列表的形式传入(这就是按多列进行分 组)。...""" (1)按一列进行分组 import pandas as pd df = pd.DataFrame([[99,"A类","一线城市","是",6,20,0],...、min 求最小值、median 求中位数、 mode 求众数、var 求方差、std 求标准差、quantile 求分位数 (2)按多列进行分组 按多列进行分组,只要将多个列名以列表的形式传给...df.groupby("客户分类")["7月销量"].sum() ---- 2.分组键是Series 把DataFrame的其中一列取出来就是一个Series ,如df["客户分类"]。...其实这和列选择一样,传入多个Series时,是列表中的列表;传入一个Series直接写就可以。
pandas 是基于 Numpy 构建的含有更高级数据结构和工具的数据分析包 类似于 Numpy 的核心是 ndarray,pandas 也是围绕着 Series 和 DataFrame 两个核心数据结构展开的...df=DataFrame(data) 其中DataFrame(data=None,index=None,columns=None)其中index代表行名称,columns代表列名称 其中df.index.../df.columns分别代表行名称与列名称: df.index #行名 df.columns #列名 其中index也是索引,而且不是那么好修改的。...,然后sorted代表对第一列进行排序; a.ix[:,1]-1 代表排好的秩,-1就还原到数据可以认识的索引。...argmin , argmax 最小值和最大值的索引位置(整数) idxmin , idxmax 最小值和最大值的索引值 quantile 样本分位数(0 到 1) sum 求和 mean 均值 median
直接对 age 这一列调用 max方法即可。 user_info.age.max() 40 类似的,通过调用 min、mean、quantile、sum 方法可以实现最小值、平均值、中位数以及求和。...来介绍个有意思的方法:cumsum,看名字就发现它和 sum 方法有关系,事实上确实如此,cumsum 也是用来求和的,不过它是用来累加求和的,也就是说它得到的结果与原始的 Series 或 DataFrame...大小相同。...Pandas 支持两种排序方式:按轴(索引或列)排序和按实际值排序。 先来看下按索引排序:sort_index 方法默认是按照索引进行正序排的。...name Tom 18 beijing male Bob 30 shanghai male Mary 25 guangzhou female James 40 shenzhen male 修改列/索引名称
copyimport numpy as npa = np.arange(4)b = a # 这样的话b就是a,当后续a的值发生变化时,b也会变# 解决b = a.copy() # 把a的值给b,但并没有将...行的名字df.columns # 列的名字df.values # df中的值,得到的是ndarray类型的值df.describe() # 默认是描述数字类型的属性,目的在于观察这一系列数据的范围、大小...(by='E') # 按'E'列的值进行升序排序""""""# pandas选择数据import pandas as pdimport numpy as npdates = pd.date_range(...periods=6)df = pd.DataFrame(np.random.random(6,4),index=dates,columns=['a','b','c','d'])df['a'] # 选择列名称为...(从0开始)df.iloc[3:5,1:3] # 第三行到第五列(不包括),第一列到第三列(不包括)(从0开始,左闭右开)df.iloc[1,3,5,1:3] # 第一行 第三行 第五列,第一列到第三列
减小DataFrame空间大小 pandas DataFrame被设计成可以适应内存,所以有些时候你可以减小DataFrame的空间大小,让它在你的系统上更好地运行起来。...神奇的是,pandas已经将第一列作为索引了: ? 需要注意的是,如果你想要你的工作在未来可复制,那么read_clipboard()并不值得推荐。 12....其中有一列是genre(类型): ?...如果我们想要划分一个字符串,但是仅保留其中一个结果列呢?比如说,让我们以", "来划分location这一列: ?...set_option()函数中第一个参数为选项的名称,第二个参数为Python格式化字符。可以看到,Age列和Fare列现在已经保留小数点后两位。
使用index_col参数可以操作数据框中的索引列,如果将值0设置为none,它将使用第一列作为index。 ?...5、略过行和列 默认的read_excel参数假定第一行是列表名称,会自动合并为DataFrame中的列标签。...1、查看列 包括以下三种主要方法: 使用点符号:例如data.column_name 使用方括号和列名称:数据[“COLUMN_NAME”] 使用数字索引和iloc选择器:data.loc [:,'column_number...3、查看特定行 这里使用的方法是loc函数,其中我们可以指定以冒号分隔的起始行和结束行。注意,索引从0开始而不是1。 ? 4、同时分割行和列 ? 5、在某一列中筛选 ? 6、筛选多种数值 ?...3、求和 按行或列求和数据: ? 为每行添加总列: ? 4、将总列添加到已存在的数据集 ? 5、特定列的总和,使用loc函数 ? 或者,我们可以用以下方法: ? 6、用drop函数删除行 ?
它代表一列数据。 连同索引和值一起,输出显示序列的名称,长度和数据类型。 或者,虽然不建议这样做,但可能会出错,但是可以使用带有列名作为属性的点表示法来访问数据列。...它具有三个互斥的参数items,like和regex,一次只能使用其中一个。like参数采用一个字符串,并尝试查找名称中某处包含该确切字符串的所有列名称。...Pandas 定义了内置的len函数以返回行数。 步骤 2 和步骤 3 中的方法将每一列汇总为一个数字。 现在,每个列名称都是序列中的索引标签,其汇总结果为相应的值。...正如我们在最后一步中按年份和得分排序一样,我们获得的年度最高评分电影。 更多 可以按升序对一列进行排序,而同时按降序对另一列进行排序。...操作步骤 读取以机构名称作为索引的大学数据集,然后从索引 10 到 20 选择每隔一行: >>> college = pd.read_csv('data/college.csv', index_col=
领取专属 10元无门槛券
手把手带您无忧上云