Pandas-数据结构-DataFrame(二):设置索引【①创建DataFrame时添加行、列索引;②修改行/列索引值;③重设新下标索引;④以某列值设置为新的索引】

DataFrame索引

  • 修改的时候,需要进行全局修改
  • 对象.reset_index()
  • 对象.set_index(keys)

创建学生成绩表


score = np.random.randint(40, 100, (10, 5))

array([[92, 55, 78, 50, 50],
       [71, 76, 50, 48, 96],
       [45, 84, 78, 51, 68],
       [81, 91, 56, 54, 76],
       [86, 66, 77, 67, 95],
       [46, 86, 56, 61, 99],
       [46, 95, 44, 46, 56],
       [80, 50, 45, 65, 57],
       [41, 93, 90, 41, 97],
       [65, 83, 57, 57, 40]])

但是这样的数据形式很难看到存储的是什么的样的数据,可读性比较差!!

问题:如何让数据更有意义的显示


score_df = pd.DataFrame(score)

Pandas-数据结构-DataFrame(二):设置索引【①创建DataFrame时添加行、列索引;②修改行/列索引值;③重设新下标索引;④以某列值设置为新的索引】

给分数数据增加行列索引,显示效果更佳

效果:

Pandas-数据结构-DataFrame(二):设置索引【①创建DataFrame时添加行、列索引;②修改行/列索引值;③重设新下标索引;④以某列值设置为新的索引】

一、创建DataFrame时添加行、列索引

import numpy as np
import pandas as pd

score = np.random.randint(40, 100, (10, 5))
print("score = \n", score)
print("-" * 100)

subjects = ["语文", "数学", "英语", "政治", "体育"]

stu = ['同学' + str(i) for i in range(score.shape[0])]

data = pd.DataFrame(score, columns=subjects, index=stu)

print("data = \n", data)

打印结果:

score =
 [[56 73 50 49 77]
 [52 61 71 90 67]
 [78 90 63 70 50]
 [83 42 74 77 71]
 [86 63 97 77 72]
 [80 40 42 62 75]
 [86 95 62 74 89]
 [55 97 49 61 78]
 [68 45 71 74 66]
 [59 49 47 95 68]]
data =
      语文  数学  英语  政治  体育
同学0  74  90  98  59  98
同学1  88  67  57  42  55
同学2  98  90  84  47  96
同学3  62  71  66  42  59
同学4  92  40  46  84  53
同学5  66  46  86  79  80
同学6  93  76  91  66  49
同学7  93  99  82  88  63
同学8  45  58  85  49  50
同学9  60  72  53  76  62
data =
      语文  数学  英语  政治  体育
同学0  47  53  73  81  42
同学1  82  98  77  95  51
同学2  55  59  64  76  65
同学3  51  67  77  61  71
同学4  83  53  50  97  69
同学5  67  69  92  69  55
同学6  55  81  87  68  43
同学7  74  45  51  43  53
同学8  54  51  71  63  82
同学9  52  88  57  64  69
df1 =
        year  sale
month
1      2012    55
4      2014    40
7      2013    84
10     2014    31

Process finished with exit code 0

设置多个索引,以年和月份

注:通过刚才的设置,这样DataFrame就变成了一个具有MultiIndex的DataFrame。

Original: https://blog.csdn.net/u013250861/article/details/124028065
Author: u013250861
Title: Pandas-数据结构-DataFrame(二):设置索引【①创建DataFrame时添加行、列索引;②修改行/列索引值;③重设新下标索引;④以某列值设置为新的索引】

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/680092/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球