开篇先嘚啵
昨天写到哪了?
睡醒就忘了... ...
不过聪明伶俐的博主,仅用1秒钟就想起来了
我们昨天学了一个pandas的类型series
并且会创建了,厉不厉害
对于一个新的数据结构来说
额,不对,对于python任意的数据结构来说
或者换句话,对于任何对象来说
看我,就没有对象... ...
都有两个内容
一个叫属性,一个叫方法
对象的属性
就是,你长成啥样
你俊俏的鼻子,
帅气的耳朵,
放光的眼睛
绿绿的头发
对象的方法
就是,你能干啥
你能随风奔跑
你能跳过泥坑
你能用手指打98K
你还能跳C哩C
明白了,上面的内容,就好了
什么,不明白
那么,记住对象. 出来
的不带括号,叫属性
带括号,叫方法
... ...
series的属性
这种问题,一般简单的很
你只要能找到官网
啥都OK
什么,找不到官网?
百度 Python pandas
不就行了?
打开之后,咦~!! 这么多
看到没,都是series.xxx
后面没有括号吧,那就是属性喽
常规学习套路,老师会告诉你,这些不用都记住
记住几个常用的就行
恩,很有道理,其实就是嫌弃我的脑容量不够
不过,几个其实我也记不住
机智的我只能靠才华吃饭了
一眼就就看到了几个认识的
我们刚学会声明一个series啊
my_series = pd.Series(data = ['我','是','梦想','橡皮擦'],index=['a','b','c','d'],name='梦想序列')
注意看,里面有几个关键的单词
data
,name
,index
编写代码测试一下
import pandas as pd
my_series = pd.Series(data = ['我','是','梦想','橡皮擦'],index=['a','b','c','d'],name='梦想序列')
print(my_series.index) # 获取索引,返回一个列表
print(my_series.name) # 获取series的名字
print(my_series.data) # 获取数据,返回一个列表
运行之后,还不错,2个对了,不过除了1条警告
大概意思是,看我英语水平
series.data 以后要被移除... ...
哦,也就是不要用了
nice啊,少记一个属性唉~~
继续!
试一下下面的代码吧
print(my_series.values)
print(my_series.shape)
print(my_series.size)
可以整理一下了
常见的一些属性,我们已经整理完毕了
就用这几个吧,
老师说了,多了,咱也记不住
其它的后面做案例,咱在后头看
series的方法
下面捣鼓捣鼓series的一系列方法
最常用也是最基本的,就是获取元素了,
series是一维的
可以用索引获取,昨天的课程中,咱已经尝试过了
那么方法的写法呢?
my_series = pd.Series(data = ['我','是','梦想','橡皮擦'],index=['a','b','c','d'],name='梦想序列')
print(my_series.loc['a'])
print(my_series.iloc[0])
注意这两个的区别,
它们都可以获取到我
但是一个写作loc,一个写作iloc
记住,一个是通过整数索引去获取,一个是通过标签索引去获取
还有,不是小括号哦~中括号
iloc 是 英文 integer-location
索引,一定要区分好
当看到中括号的时候,你就应该考虑切片了
my_series = pd.Series(data = ['我','是','梦想','橡皮擦'],index=['a','b','c','d'],name='梦想序列')
print(my_series.iloc[0:2])
print(my_series.loc['a':'c'])
切片也有区别哦,
loc切的是标签索引,并且包含末尾元素
iloc切的是整数索引,不包含末尾元素
一定要体会用法
当然还有很多其他叫座的用法
如果你学有余力
打开官网,尝试一下吧
Http://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.Series.iloc.html
http://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.Series.loc.html
series的方法,太多太多了
http://pandas.pydata.org/pandas-docs/stable/reference/series.html
看看吧,慢慢学,
应用层面的这些,我给你捣鼓捣鼓
下面在看一个函数
.to_list()
基本上,看其名,知其意了
只不过,官网写差了,竟然给官网找毛病?
这个函数实际写的时候,没有中间的小短线
print(my_series.tolist())
.items()
print(list(my_series.items()))
返回一个索引和值的元素zip,使用list可以打印出来
[('a', '我'), ('b', '是'), ('c', '梦想'), ('d', '橡皮擦')]
.keys()
看到名字,就猜意思,这个钥匙是干啥的?估计跟索引有关系
没错,返回可迭代的index
print(my_series.keys())
>>> Index(['a', 'b', 'c', 'd'], dtype='object')
很多,在写下去,估计就写不完了
分一下类吧
series全部类型的方法
必会简单的
- 构造函数
- 常用属性
方法类型
- 转换类的方法 -- 将 series转换为其他类型
- 索引,迭代器类方法 -- 操作索引,获取各种迭代器
- 二元操作函数 -- 操作两个series函数
- 应用函数,分组函数 -- apply,map,groupby 都是常用的
- 计算函数 -- 求和,最大值,最小值都在这里呢
- 重置索引,选择部分,标签操作函数
- 删除数据函数
- 排序函数
- 合并函数
- 时间序列函数
- 字符串处理
- 作图函数
- IO与序列化函数
好多啊,如果慢慢学,只能去肝了
索引,文档手册怎么查询
英文阅读能力,你都需要提高了哦
最后,欢迎关注一个唠叨的编程工程师的公号,非本科程序员
掏出你的手机,拍这个