首页 > 编程语言 >python-数据分析-Pandas-5、DataFrame-index

python-数据分析-Pandas-5、DataFrame-index

时间:2024-06-10 15:33:23浏览次数:19  
标签:index python DataFrame Pandas 索引 print data pandas red

Index类型,它为Series和DataFrame对象提供了索引服务,有了索引我们就可以排序数据(sort_index方法)、对齐数据(在运算和合并数据时非常重要)并实现对数据的快速检索(索引运算)。
由于DataFrame类型表示的是二维数据,所以它的行和列都有索引,分别是index和columns。Index类型的创建的比较简单,通常给出data、dtype和name三个参数即可,分别表示作为索引的数据、索引的数据类型和索引的名称。
由于Index本身也是一维的数据,索引它的方法和属性跟Series非常类似
# -*- coding: utf-8 -*-
#index

import pandas
import numpy

#范围索引
#范围索引是由具有单调性的整数构成的索引,我们可以通过RangeIndex构造器来创建范围索引,
# 也可以通过RangeIndex类的类方法from_range来创建范围索引
sales_data= numpy.random.randint(400, 1000, 12)
index = pandas.RangeIndex(1, 13, name='月份')
ser = pandas.Series(data=sales_data, index=index)
print(ser)
'''
月份
1     729
2     676
3     548
4     527
5     949
6     502
7     947
8     579
9     633
10    454
11    498
12    843
dtype: int32
'''

#分类索引
#分类索引是由定类尺度构成的索引。如果我们需要通过索引将数据分组,然后再进行聚合操作,分类索引就可以派上用场
#分类索引还有一个名为reorder_categories的方法,可以给索引指定一个顺序,分组聚合的结果会按照这个指定的顺序进行呈现
sales_data = [6, 6, 7, 6, 8, 6]
index = pandas.CategoricalIndex(    # 创建分类索引
    data=['苹果', '香蕉', '西瓜', '苹果', '西瓜', '香蕉'],  # 索引数据
    categories=['苹果', '香蕉', '西瓜'],  # 指定分类顺序
    ordered=True    # 指定索引为有序索引
)
ser = pandas.Series(data=sales_data, index=index)
print(ser)
'''
苹果    6
香蕉    6
西瓜    7
苹果    6
西瓜    8
香蕉    6
dtype: int64
'''

#基于索引分组数据,然后使用sum进行求和。
print(ser.groupby(level=0).sum())   # 按索引分组求和 level: 指定分组的索引级别
'''
苹果    12
香蕉    12
西瓜    15
dtype: int64
'''

#指定索引的顺序。
ser.index = index.reorder_categories(['西瓜', '香蕉', '苹果'])
print(ser.groupby(level=0).sum())
'''
西瓜    15
香蕉    12
苹果    12
dtype: int64
'''

print('-------------------------------------------')

#多级索引
#Pandas 中的MultiIndex类型用来表示层次或多级索引。
# 可以使用MultiIndex类的类方法from_arrays、from_product、from_tuples等来创建多级索引,我们给大家举几个例子。
tuples = [(1, 'red'), (1, 'blue'), (2, 'red'), (2, 'blue')]
index = pandas.MultiIndex.from_tuples(tuples, names=['number', 'color'])
print(index)
'''
MultiIndex([(1,  'red'),
            (1, 'blue'),
            (2,  'red'),
            (2, 'blue')],
           names=['number', 'color'])
'''

arrays = [[1, 1, 2, 2], ['red', 'blue', 'red', 'blue']]
index = pandas.MultiIndex.from_arrays(arrays, names=['number', 'color'])
print(index)
'''
MultiIndex([(1,  'red'),
            (1, 'blue'),
            (2,  'red'),
            (2, 'blue')],
           names=['number', 'color'])
'''

stu_ids = numpy.arange(1001, 1006)
semisters = ['期中', '期末']
index = pandas.MultiIndex.from_product((stu_ids, semisters), names=['学号', '学期'])
courses = ['语文', '数学', '英语']
scores = numpy.random.randint(60, 101, (10, 3))
df = pandas.DataFrame(data=scores, columns=courses, index=index)
print(df)

 

标签:index,python,DataFrame,Pandas,索引,print,data,pandas,red
From: https://www.cnblogs.com/littlecc/p/18240703

相关文章

  • 如何用python修复一张有多人图像的老照片,修复后照片是彩色高清
    要修复一张有多人图像的老照片,可以使用OpenCV库和深度学习模型。以下是一个简单的示例:```pythonimportcv2importnumpyasnpimporttensorflowastffromtensorflow.keras.modelsimportload_model#加载预训练的深度学习模型model=load_model('path/to/your/mode......
  • python常用函数
    python常用函数一、进制转换#字符串与ASCII码转换print(ord("A"))#65print(chr(65))#A#进制转换print(bin(78))#0b1001110print(oct(78))#0o116print(hex(78))#0x4eprint(int('4e',16))二、数学函数函数返回值(描述)abs(x)返......
  • 将这张图片修复为彩色高清,然后在Python中,可以使用以下库来执行上述任务
    将这张图片修复为彩色高清,然后在Python中,可以使用以下库来执行上述任务OpenCV:用于图像处理、面部检测等。dlib:用于面部检测和特征点标记。Scikit-image:用于图像处理和修复。TensorFlow或PyTorch:用于训练和使用深度学习模型,如图像修复GAN和超分辨率模型。首先,我们需要将......
  • python快速生成二维码及读取二维码内容 pyqrcode MyQR pyzbar
    目录效果图生成二维码方式1:pyqrcode方式2:MyQR  读取二维码效果图生成二维码方式1:pyqrcode安装pipinstallpyqrcode代码实现importpyqrcode#text为保存在二维码的内容。text为完整链接时,扫描后可直接跳转到该链接text='https://www.baidu.com/'qr=pyqrc......
  • 使用Python去除PNG图片背景
    要使用Python自动去除PNG图片的背景,你可以使用remove.bg的API,或者使用一些图像处理库如OpenCV和Pillow结合MaskR-CNN等深度学习模型。以下是一个使用Pillow库的简单示例:安装所需库:pipinstallpillownumpy使用以下代码去除背景:fromPILimportImageimportnumpyas......
  • Python GUI编程:深入探索现代GUI库及其创新应用
    目录引言PythonGUI库概览1.Tkinter2.PyQt/PySide3.wxPython4.Kivy5.PyGTK6.FLTK(pyFLTK)创新应用案例1.交互式数据分析工具2.智能物联网(IoT)仪表板3.增强现实(AR)辅助设计软件4.跨平台的科学计算软件5.交互式教育软件实战示例1:使用PyQt5开发智能......
  • python-数据分析-Pandas-4、DataFrame-数据透视
    经过前面的学习,我们已经将数据准备就绪而且变成了我们想要的样子接下来就是最为重要的数据透视阶段了。当我们拿到一大堆数据的时候,如何从数据中迅速的解读出有价值的信息把繁杂的数据变成容易解读的统计图表并再此基础上产生业务洞察,这就是数据分析要解决的核心问题。数据透视......
  • python-pip配置镜像源加速下载Python包安装:快速配置pip源-国内加速源
    目录一、简介二、国内常用加速源 三、配置pip加速源1.临时配置2.永久配置a.配置命令b.查看是否配置成功c.还原配置一、简介pip的原本安装源是PythonPackageIndex(PyPI)的官方源,其URL为https://pypi.org/simple/。PyPI是Python社区用来发布和共享软件包的官方仓......
  • Python程序操作MySQL数据库教程
    1.Python程序操作MySQL数据库:使用pymysql安装包使用:1.导入pysql包importpymysql2.创建连接对象调用pymysql模块中的connect()函数来创建连接对象,代码如下:连接对象说明:关闭连接conn.close()提交数据conn.commit()撤销数据conn.rollback()3.获取游标对象获取......
  • 【2024最新华为OD-C/D卷试题汇总】[支持在线评测] 机场航班调度程序(100分) - 三语言A
    ......