Dataframe的索引问题】的更多相关文章

在对Series对象和DataFrame对象进行索引的时候要明确这么一个概念:是使用下标进行索引,还是使用关键字进行索引.比如list进行索引的时候使用的是下标,而dict索引的时候使用的是关键字. 使用下标索引的时候下标总是从0开始的,而且索引值总是数字.而使用关键字进行索引,关键字是key里面的值,既可以是数字,也可以是字符串等. Series对象介绍: Series对象是由索引index和值values组成的,一个index对应一个value.其中index是pandas中的Index对象…
多级索引:在一个轴上有多个(两个以上)的索引,能够以低维度形式来表示高维度的数据.单级索引是Index对象,多级索引是MultiIndex对象. 一.创建多级索引 方法一:隐式创建,即给DataFrame的index或columns参数传递两个或更多的数组. df1 = pd.DataFrame(np.random.randint(80, 120, size=(2, 4)), index= ['girl', 'boy'], columns=[['English', 'English', 'Chi…
1 两个Dataframe相加时,一定要注意索引是否对应再相加,利用这个特点有时可以先用set_index()将某些列置为索引列,再进行相加. import pandas as pd df1 = pd.DataFrame({'a':np.arange(1,5,1), 'b':np.arange(3,15,3)}, index=[2,3,4,5]) df2 = pd.DataFrame({'c':[2,3,4,5], 'd':[6,7,8,9]}) print(df1) print(df2) #…
DataFrame的这些操作和Series很相似,这里简单介绍一下. 一,应用和应用映射 apply()函数对每个轴应用一个函数,applymap()函数对每个元素应用一个函数: DataFrame.apply(self, func, axis=0, raw=False, result_type=None, args=(), **kwds) DataFrame.applymap(self, func) 定义一个函数fun,使用apply()函数把fun应用到由DataFrame对象的列构成的一维…
一.行多层索引 1.隐式创建 在构造函数中给index.colunms等多个数组实现(datafarme与series都可以) df的多级索引创建方法类似: 2.显式创建pd.MultiIndex 其中.from_arrays为类似上面的参数,推荐使用简单的from_product函数(会自动进行交叉): 二.列多层索引 列多层索引同理:  三.多层索引操作与切片 1.Series多层索引 使用中括号和loc效果完全一样: 切片,只切第一级索引,与之前一致,需要指定某些指定行时,可以通过iloc…
  层次化索引 层次化索引指你能在一个数组上拥有多个索引,例如: 有点像Excel里的合并单元格对么? 根据索引选择数据子集   以外层索引的方式选择数据子集: 以内层索引的方式选择数据: 多重索引Series转换为DataFrame   层次化索引在数据重塑和分组中扮演着很重要的角色,例如,上面的层次化索引数据可以转换为一个DataFrame: 对于一个DataFrame,横轴和竖轴都可以有层次化索引,例如: 重排分级顺序 根据索引交换 swaplevel()函数可以将两个级别的数据进行交换,…
一.reindex() 方法:重新索引 针对 Series   重新索引指的是根据index参数重新进行排序. 如果传入的索引值在数据里不存在,则不会报错,而是添加缺失值的新行. 不想用缺失值,可以用 fill_value 参数指定填充值. 例如:   fill_value 会让所有的缺失值都填充为同一个值,如果不想这样而是用相邻的元素(左或者右)的值填充,则可以用 method 参数,可选的参数值为 ffill 和 bfill,分别为用前值填充和用后值填充: 针对 DataFrame   重新…
本节介绍Series和DataFrame中的数据的基本手段 重新索引 pandas对象的一个重要方法就是reindex,作用是创建一个适应新索引的新对象 ''' Created on 2016-8-10 @author: xuzhengzhu ''' ''' Created on 2016-8-10 @author: xuzhengzhu ''' from pandas import * print "--------------obj result:-----------------"…
一.DataFrame构建 1.用多个列表构建 #构建DataFrame #self._stkpool_uni.codes.end_date(这些list用append填充值,保证各个list中元素个数一致)        dfData = {"STK_UNI_CODE":self._stkpool_uni, "STK_CODE":codes, "END_DATE":end_date,                  "SCORE_F…
DataFrame使用总结1(超实用): 1. 合并两个表 frame = [df1, df2] df = pd.concat(frame) res = pd.merge(df, df1, on=['key', 'key1'], how='inner') res = pd.merge(df, df1, left_on=['key'], left_on=['key1'], how='inner') 合并表的操作(Merge, join, and concatenate) http://pandas…