Python pandas.DataFrame调整列顺序及修改index名的方法

1. 从字典创建DataFrame

>>> import pandas
>>> dict_a = {'user_id':['webbang','webbang','webbang'],'book_id':['3713327','4074636','26873486'],'rating':['4','4','4'],'mark_date':['2017-03-07','2017-03-07','2017-03-07']}
>>> df = pandas.DataFrame(dict_a) # 从字典创建DataFrame
>>> df # 创建好的df列名默认按首字母顺序排序,和字典中的先后顺序并不一样,字典中是'user_id','book_id','rating','mark_date'
  book_id  mark_date rating user_id
0  3713327 2017-03-07   4 webbang
1  4074636 2017-03-07   4 webbang
2 26873486 2017-03-07   4 webbang

2. 调整列顺序

>>> df = df[['user_id','book_id','rating','mark_date']] # 调整列顺序为'user_id','book_id','rating','mark_date'
>>> df
  user_id  book_id rating  mark_date
0 webbang  3713327   4 2017-03-07
1 webbang  4074636   4 2017-03-07
2 webbang 26873486   4 2017-03-07

3. 调整index为从1开始

>>> df.index = range(1,len(df) + 1) # 将index改成从1开始
>>> df
  user_id  book_id rating  mark_date
1 webbang  3713327   4 2017-03-07
2 webbang  4074636   4 2017-03-07
3 webbang 26873486   4 2017-03-07

DataFrame操作汇总:http://www.cnblogs.com/huahuayu/p/8227494.html

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • python pandas.DataFrame选取、修改数据最好用.loc,.iloc,.ix实现

    相信很多人像我一样在学习python,pandas过程中对数据的选取和修改有很大的困惑(也许是深受Matlab)的影响... 到今天终于完全搞清楚了!!! 先手工生出一个数据框吧 import numpy as np import pandas as pd df = pd.DataFrame(np.arange(0,60,2).reshape(10,3),columns=list('abc')) df 是这样子滴 那么这三种选取数据的方式该怎么选择呢? 一.当每列已有column name时,用

  • Python pandas.DataFrame调整列顺序及修改index名的方法

    1. 从字典创建DataFrame >>> import pandas >>> dict_a = {'user_id':['webbang','webbang','webbang'],'book_id':['3713327','4074636','26873486'],'rating':['4','4','4'],'mark_date':['2017-03-07','2017-03-07','2017-03-07']} >>> df = pandas.

  • python pandas dataframe 按列或者按行合并的方法

    concat 与其说是连接,更准确的说是拼接.就是把两个表直接合在一起.于是有一个突出的问题,是横向拼接还是纵向拼接,所以concat 函数的关键参数是axis . 函数的具体参数是: concat(objs,axis=0,join='outer',join_axes=None,ignore_index=False,keys=None,levels=None,names=None,verigy_integrity=False) objs 是需要拼接的对象集合,一般为列表或者字典 axis=0 是

  • Pandas中DataFrame交换列顺序的方法实现

    一.获取DataFrame列标签 import pandas as pd file_path = '/Users/Arithmetic/da-rnn-master/data/collectd67_power_after_test_smooth.csv' dataset = pd.read_csv(file_path) cols = list(dataset) ['ps_state-stopped', 'ps_state-running', 'ps_state-blocked', 'ps_stat

  • python pandas dataframe 行列选择,切片操作方法

    SQL中的select是根据列的名称来选取:Pandas则更为灵活,不但可根据列名称选取,还可以根据列所在的position(数字,在第几行第几列,注意pandas行列的position是从0开始)选取.相关函数如下: 1)loc,基于列label,可选取特定行(根据行index): 2)iloc,基于行/列的position: 3)at,根据指定行index及列label,快速定位DataFrame的元素: 4)iat,与at类似,不同的是根据position来定位的: 5)ix,为loc与i

  • Python pandas DataFrame基础运算及空值填充详解

    目录 前言 数据对齐 fill_value 空值api dropna fillna 总结 前言 今天我们一起来聊聊DataFrame中的索引. 上一篇文章当中我们介绍了DataFrame数据结构当中一些常用的索引的使用方法,比如iloc.loc以及逻辑索引等等.今天的文章我们来看看DataFrame的一些基本运算. 数据对齐 我们可以计算两个DataFrame的加和,pandas会自动将这两个DataFrame进行数据对齐,如果对不上的数据会被置为Nan(not a number). 首先我们来

  • Pandas.DataFrame重置列的行名实现(set_index)

    目录 set_index()的使用方法 基本用法 将指定的列保留为数据:参数drop 分配多索引 将索引更改为另一列(重置) 更改原始对象:参数inplace 读取csv文件等时指定索引 使用索引(行名)提取(选择)行和元素 pandas.DataFrame中的现有列分配给索引index(行名,行标签).为索引指定唯一的名称很方便,因为使用loc,at选择(提取)元素时很容易理解. 将描述以下内容. set_index()的使用方法 基本用法 将指定的列保留为数据:参数drop 分配多索引 将索

  • Python Pandas中根据列的值选取多行数据

    Pandas中根据列的值选取多行数据 # 选取等于某些值的行记录 用 == df.loc[df['column_name'] == some_value] # 选取某列是否是某一类型的数值 用 isin df.loc[df['column_name'].isin(some_values)] # 多种条件的选取 用 & df.loc[(df['column'] == some_value) & df['other_column'].isin(some_values)] # 选取不等于某些值的

  • Python pandas.DataFrame 找出有空值的行

    0.摘要 pandas中DataFrame类型中,找出所有有空值的行,可以使用.isnull()方法和.any()方法. 1.找出含有空值的行 方法:DataFrame[DataFrame.isnull().T.any()] 其中,isnull()能够判断数据中元素是否为空值:T为转置:any()判断该行是否有空值. import pandas as pd import numpy as np n = np.arange(20, dtype=float).reshape(5,4) n[2,3]

  • python pandas.DataFrame.loc函数使用详解

    官方函数 DataFrame.loc Access a group of rows and columns by label(s) or a boolean array. .loc[] is primarily label based, but may also be used with a boolean array. # 可以使用label值,但是也可以使用布尔值 Allowed inputs are: # 可以接受单个的label,多个label的列表,多个label的切片 A singl

随机推荐