发布时间: 2023-7-21 文章作者: myluzh 分类名称: Python 朗读文章
import pandas as pd import numpy as np # 创建一个ndarray,10行5列学生成绩 score = np.random.randint(40, 100, (10, 5)) # 变成dataframe格式 subjects = ['语文', '数学', '英语', '科学', '政治'] stu = ['学生' + str(_) for _ in range(score.shape[0])] # ['学生0', '学生1', '学生2', '学生3', '学生4', '学生5', '学生6', '学生7', '学生8', '学生9'] # index是行索引,columns是列索引 data = pd.DataFrame(score, index=stu, columns=subjects) """ 语文 数学 英语 科学 政治 学生0 75 80 78 68 49 学生1 92 42 86 43 44 学生2 55 50 75 49 78 学生3 63 85 85 82 40 学生4 66 93 44 67 40 学生5 58 46 77 99 58 学生6 65 81 78 62 83 学生7 41 90 91 85 84 学生8 81 75 64 60 60 学生9 83 60 94 63 64 """
# 获取values值 print(data.values) # 获取列索引 print(data.columns) # Index(['语文', '数学', '英语', '科学', '政治'], dtype='object') # 获取行索引 print(data.index) # Index(['学生0', '学生1', '学生2', '学生3', '学生4', '学生5', '学生6', '学生7', '学生8', '学生9'], dtype='object') # 转置.T print(data.T) """ 学生0 学生1 学生2 学生3 学生4 学生5 学生6 学生7 学生8 学生9 语文 40 76 92 51 75 67 94 94 81 70 数学 59 66 63 78 80 76 81 55 67 45 英语 66 69 52 75 44 94 67 90 97 54 科学 83 79 97 66 43 74 96 54 55 51 政治 45 74 97 79 88 86 42 58 83 56 """ # 显示前五行 print(data.head(5)) # 显示后五行 print(data.tail(5))
# new_stu为新索引 new_stu = ['人员' + str(_) for _ in range(score.shape[0])] data.index = new_stu # 设置索引 print(data) """ 语文 数学 英语 科学 政治 人员0 86 49 73 48 57 人员1 87 95 76 93 63 人员2 41 53 68 68 41 人员3 51 85 93 64 56 人员4 74 64 83 94 95 人员5 40 82 77 72 69 人员6 44 98 54 65 86 人员7 44 66 43 91 96 人员8 66 66 59 61 65 人员9 72 59 86 44 54 """ print(data.reset_index(drop=True)) # drop=True 不保留之前是索引 """ 语文 数学 英语 科学 政治 0 86 49 73 48 57 1 87 95 76 93 63 2 41 53 68 68 41 3 51 85 93 64 56 4 74 64 83 94 95 5 40 82 77 72 69 6 44 98 54 65 86 7 44 66 43 91 96 8 66 66 59 61 65 9 72 59 86 44 54 """
标签: python pandas 数据结构 dataframe
发表评论