龙空技术网

Pandas进阶120题之39:列索引的创建(2)

默至 219

前言:

目前姐妹们对“python添加列”大致比较讲究,各位老铁们都需要剖析一些“python添加列”的相关文章。那么小编同时在网摘上汇集了一些关于“python添加列””的相关文章,希望咱们能喜欢,兄弟们快快来了解一下吧!

为帮助学习pandas,特意从和鲸社区中提炼出120道经典数据处理常见操作例题,从基础入门到进阶来更快速、更专业的角度理解pandas。主要包括:

Pandas基础Pandas进阶金融数据处理NumPy科学计算一些补充

()

原始数据:

import pandas as pdimport numpy as npdata = pd.DataFrame(np.random.randint(0, 150, size=(3, 6)),                #columns=pd.MultiIndex.from_product([['Java', 'HTML', 'Python'], ['期中', '期末']]),                index=['北京', '郑州', '武汉'])data_cp=data.copy()data_cp
数据理解:

此次案例数据是一些地区信息:'温度', '湿度', '光照强度','上午', '下午'。

行索引利用index设置了:北京、郑州、武汉。

需求描述

实现如下两个功能:

添加一层列索引(也就是表头信息)添加多层列索引(['温度', '湿度', '光照强度'], ['上午', '下午'])代码实现添加一层列索引(也就是表头信息)

方法一:直接进行修改

#方法一:直接进行修改data_cp.columns=['a','b','c','d','e','f']

方法二:指定修改某列或某几列名字,利用rename替换

data_cp.rename(columns={0:'a',                       1:'b',                       2:'c',                       3:'d',                       4:'e',                       5:'f'},inplace=True)

如上两种方法实现结果相同。

添加多层列索引(['温度', '湿度', '光照强度'], ['上午', '下午'])

多层列索引创建,可用两种方法构建,隐式构建和显示构建

(1) 隐式构建

最常见的方法是给DataFrame构造函数的columns参数传递两个或更多的数组

data_cp.columns=[['温度','温度','湿度','湿度','光照强度','光照强度'],                ['上午','下午','上午','下午','上午','下午']]
(2) 显示构造

三种方法:数组、元组、product

使用数组 :pd.MultiIndex.from_arrays

data_cp.columns=pd.MultiIndex.from_arrays([['温度','温度','湿度','湿度','光照强度','光照强度'],                                           ['上午','下午','上午','下午','上午','下午']])
使用tuple :pd.MultiIndex.from_tuples
data_cp.columns=pd.MultiIndex.from_tuples([("温度",'上午'),('温度','下午'),                                         ("湿度",'上午'),('湿度','下午'),                                         ("光照强度",'上午'),('光照强度','下午')                                        ])
使用product :pd.MultiIndex.from_product
data_cp.columns=pd.MultiIndex.from_product([['温度', '湿度', '光照强度'],                                             ['上午', '下午']])

如上三种方法:通过观察结果相同!!!

总结

此次介绍了两种方法创建多层列索引:

隐式构建:最常见的方法是给DataFrame构造函数的columns参数传递两个或更多的数组

显示构造:数组、元组、product,

使用数组: pd.MultiIndex.from_arrays使用tuple :pd.MultiIndex.from_tuples使用product:pd.MultiIndex.from_product

#我要上头条#

#python#

#我要上 头条#

标签: #python添加列