DataFrame完结几列数据统一成为新的壹列方法,合

作者: 韦德国际1946手机版  发布:2019-05-28

难点讲述

python  把几个DataFrame合并成二个DataFrame——merge,append,join,concat

何以抉择DataFrame中的某几列重新组合为新的多少框即,df[[DataFrame完结几列数据统一成为新的壹列方法,合并七个DataFrame。'a','b','c']],注意括号嵌套

pandas提供了set_index方法能够将DataFrame的列(多列)形成行索引,通过reset_index方法能够将档案的次序化索引的等级会被转移到列里面。

自家有贰个用来模型陶冶的DataFrame如下图所示:

pandas provides various facilities for easily combining together Series, DataFrame, and Panel objects with various kinds of set logic for the indexes and relational algebra functionality in the case of join / merge-type operations.

图片 1

1、DataFrame的set_index方法

图片 2

1、merge

图片.png

  data = pd.DataFrame(np.arange(1,10).reshape(3,3),index=["a","b","c"],columns=["A","B","C"])
  print(data)
  '''
    A B C
  a 1 2 3
  b 4 5 6
  c 7 8 9
  '''
  #将列索引为B的列变成data的行索引
  print(data.set_index("B"))
  '''
   A C
  B
  2 1 3
  5 4 6
  8 7 9
  '''
  #获取行索引
  print(data.set_index("B").index)
  #Int64Index([2, 5, 8], dtype='int64', name='B')
  #获取列索引
  print(data.set_index("B").columns)
  #Index(['A', 'C'], dtype='object')
  #将列索引为A和C的列变成行索引,层次化索引
  print(data.set_index(["A","C"]))
  '''
     B
  A C
  1 3 2
  4 6 5
  7 9 8
  '''

里面包车型客车country、province、city、county4列其实是岗位音讯的不相同层级,应该合成壹列用于模型陶冶

pd.merge(left,right,how='inner',on=None,left_on=None,right_on=None,left_index=False,right_index=False,sort=True,suffixes=('_x','_y'),copy=True,indicator=False)

2、DataFrame的reset_index方法

方法:

left︰ 对象

  data = pd.DataFrame(np.arange(1,10).reshape(3,3),index=["a","b","c"],columns=["A","B","C"])
  print(data)
  '''
    A B C
  a 1 2 3
  b 4 5 6
  c 7 8 9
  '''
  print(data.set_index(["C"]))
  '''
    A B
  C
  3 1 2
  6 4 5
  9 7 8
  '''
  #相对于data来说行索引从原来的a、b、c变成了0、1、2
  #在使用set_index方法的时候行索引就已经被修改了
  print(data.set_index(["C"]).reset_index())
  '''
    C A B
  0 3 1 2
  1 6 4 5
  2 9 7 8
  '''
  print(data.index)
  #Index(['a', 'b', 'c'], dtype='object')
  print(data.set_index(["C"]).reset_index().index)
  #RangeIndex(start=0, stop=3, step=1)
  print(data.set_index(["C"]).reset_index().columns)
  #Index(['C', 'A', 'B'], dtype='object')
parent_teacher_data['address'] = parent_teacher_data['country'] parent_teacher_data['province'] parent_teacher_data['city'] parent_teacher_data['county']

right︰ 另一个目的

以上那篇pandas将DataFrame的列产生行索引的方法正是小编分享给大家的全体内容了,希望能给大家1个仿照效法,也意在大家多多帮忙脚本之家。

就能够把肆列合并成新的列address

on︰ 要插手的列 (名称)。必须在左、 右综合目的中找到。若是无法因此 left_index 和 right_index 是假,将猜度 DataFrames 中的列的交叉点为连接键

你恐怕感兴趣的稿子:

  • python中pandas.DataFrame对行与列求和及丰裕新行与列示例
  • python pandas dataframe 按列或许按行合并的格局
  • 对Python中DataFrame依据行遍历的法子
  • pandas种类之DataFrame 行列数据筛选实例
  • pandas Dataframe行列读取的实例
  • python pandas库中DataFrame对行和列的操作实例讲明

壹旦某一列是非str类型的多少,那么大家要求选择map(str)将那壹列数据类型做转变:

left_on︰ 从左边的汇总选拔作为键列。能够是列名或数组的尺寸等于长度综合

dataframe["newColumn"] = dataframe["age"].map(str)   dataframe["phone"]   dataframe["address”]

right_on︰ 从天经地义的汇总,以用作键列。能够是列名或数组的长短等于长度综合

以上那篇pandas DataFrame实现几列数据统1/10为新的1列方法正是小编分享给大家的全部内容了,希望能给我们一个参阅,也指望我们多多帮助脚本之家。

left_index︰ 如若为 True,则采用索引 (行标签) 从左综合营为其联接键。在与多种 (档案的次序) 的汇总,品级数必须匹配联接键从右综合的数码

你只怕感兴趣的稿子:

  • python pandas dataframe 按列也许按行合并的不二等秘书诀
  • pandas.DataFrame 依据规则新建列并赋值的方法
  • pandas DataFrame 依据多列的值做判别,生成新的列值实例
  • pandas修改DataFrame列名的章程
  • python pandas中DataFrame类型数据操作函数的艺术

right_index︰ 同样用法作为科学综合 left_index

how︰ 之一 '左','右','外在'、 '内部'。默以为当中。种种方法的更详尽表明请参阅︰

sort︰ 综合通过联接键按字典顺序对结果进行排序。暗中认可值为 True,设置为 False将增长品质十分的大地在重重情景下

suffixes︰ 字符串后缀并不适用于重叠列的元组。默许值为 ('_x','_y')。

本文由韦德国际1946发布于韦德国际1946手机版,转载请注明出处:DataFrame完结几列数据统一成为新的壹列方法,合

关键词: python 我爱编程