关闭页面特效

Pandas-数据结构&基本操作

1|0数据结构


1|1Series


Series是一个类似于一维数组的数据结构,它能够保存任何类型的数据,比如整数、字符串、浮点数等,主要由一组数据和与之相关的索引两部分构成。

Series的创建与应用

指定内容,默认索引

a=pd.Series(np.arange(10)) print(a)

输出:

 

 

 指定内容,指定索引

b=pd.Series([1.2,2.2,3.2,4.2],index=[1,2,3,4]) print(b) # 1 1.2 # 2 2.2 # 3 3.2 # 4 4.2 # dtype: float64

字典创建数据

复制代码
c=pd.Series({"red":10,"green":20,"blue":30}) print(c) print(c.index) print(c.values) print(c[1]) # red 10 # green 20 # blue 30 # dtype: int64 # Index(['red', 'green', 'blue'], dtype='object') # [10 20 30] # 20
复制代码

1|2DataFrame


DataFrame是一个类似于二维数组或表格(如excel)的对象,既有行索引,又有列索引

  • 行索引,表明不同行,横向索引,叫index,0轴,axis=0
  • 列索引,表名不同列,纵向索引,叫columns,1轴,axis=1

DataFrame的创建与应用

复制代码
a=pd.DataFrame(np.random.randn(2,3)) print(a) # 0 1 2 # 0 -1.628378 -1.574723 0.414543 # 1 -1.753412 2.216918 0.120283 score=np.random.randint(40,100,(10,5)) print(score) # [[96 68 72 66 44] # [70 56 76 51 65] # [86 41 94 77 92] # [94 99 80 91 67] # [90 88 46 65 73] # [79 52 70 50 77] # [46 71 47 97 78] # [53 57 84 59 88] # [44 79 78 78 92] # [62 65 86 90 78]]
复制代码

增加行列索引

复制代码
# # 构造行索引序列 subjects = ["语文", "数学", "英语", "政治", "体育"] stu=["同学"+str(i) for i in range(score.shape[0])] data=pd.DataFrame(score,columns=subjects,index=stu) print(data) # 语文 数学 英语 政治 体育 # 同学0 96 68 72 66 44 # 同学1 70 56 76 51 65 # 同学2 86 41 94 77 92 # 同学3 94 99 80 91 67 # 同学4 90 88 46 65 73 # 同学5 79 52 70 50 77 # 同学6 46 71 47 97 78 # 同学7 53 57 84 59 88 # 同学8 44 79 78 78 92 # 同学9 62 65 86 90 78
复制代码

其他操作

复制代码
#显示前5行数据 print(data.head(5)) #显示后5行数据 print(data.tail(5)) #显示行索引 print(data.index) # #显示列索引 print(data.columns) # #显示具体的value值 print(data.values) # #显示数据的转置T print(data.T) # #重设索引,保留之前的索引为index print(data.reset_index()) # #重设索引,删除之前的索引 print(data.reset_index(drop=True)) # #修改行索引值 stu=["同学_"+str(i) for i in range(score.shape[0])] data.index=stu print(data) # #设置某列值为新的索引 df = pd.DataFrame({'month': [1, 4, 7, 10], 'year': [2012, 2014, 2013, 2014], 'sale':[55, 40, 84, 31]}) print(df) print(df.set_index("year")) print(df.set_index(["year","month"]))
复制代码

输出:

复制代码
Index(['同学0', '同学1', '同学2', '同学3', '同学4', '同学5', '同学6', '同学7', '同学8', '同学9'], dtype='object') Index(['语文', '数学', '英语', '政治', '体育'], dtype='object') [[96 68 72 66 44] [70 56 76 51 65] [86 41 94 77 92] [94 99 80 91 67] [90 88 46 65 73] [79 52 70 50 77] [46 71 47 97 78] [53 57 84 59 88] [44 79 78 78 92] [62 65 86 90 78]] 同学0 同学1 同学2 同学3 同学4 同学5 同学6 同学7 同学8 同学9 语文 96 70 86 94 90 79 46 53 44 62 数学 68 56 41 99 88 52 71 57 79 65 英语 72 76 94 80 46 70 47 84 78 86 政治 66 51 77 91 65 50 97 59 78 90 体育 44 65 92 67 73 77 78 88 92 78 index 语文 数学 英语 政治 体育 0 同学0 96 68 72 66 44 1 同学1 70 56 76 51 65 2 同学2 86 41 94 77 92 3 同学3 94 99 80 91 67 4 同学4 90 88 46 65 73 5 同学5 79 52 70 50 77 6 同学6 46 71 47 97 78 7 同学7 53 57 84 59 88 8 同学8 44 79 78 78 92 9 同学9 62 65 86 90 78 语文 数学 英语 政治 体育 0 96 68 72 66 44 1 70 56 76 51 65 2 86 41 94 77 92 3 94 99 80 91 67 4 90 88 46 65 73 5 79 52 70 50 77 6 46 71 47 97 78 7 53 57 84 59 88 8 44 79 78 78 92 9 62 65 86 90 78 语文 数学 英语 政治 体育 同学_0 96 68 72 66 44 同学_1 70 56 76 51 65 同学_2 86 41 94 77 92 同学_3 94 99 80 91 67 同学_4 90 88 46 65 73 同学_5 79 52 70 50 77 同学_6 46 71 47 97 78 同学_7 53 57 84 59 88 同学_8 44 79 78 78 92 同学_9 62 65 86 90 78 month year sale 0 1 2012 55 1 4 2014 40 2 7 2013 84 3 10 2014 31 month sale year 2012 1 55 2014 4 40 2013 7 84 2014 10 31 sale year month 2012 1 55 2014 4 40 2013 7 84 2014 10 31
复制代码

 


__EOF__

作  者清风紫雪
出  处https://www.cnblogs.com/xiaofengzai/p/14359475.html
关于博主:编程路上的小学生,热爱技术,喜欢专研。评论和私信会在第一时间回复。或者直接私信我。
版权声明:署名 - 非商业性使用 - 禁止演绎,协议普通文本 | 协议法律文本
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。您的鼓励是博主的最大动力!

posted @   清风紫雪  阅读(152)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
历史上的今天:
2020-02-01 进度条与拖动条的使用学习
2020-02-01 双指针,BFS和图论(三)
0
0
关注
跳至底部
点击右上角即可分享
微信分享提示