Pandas
Creating, Reading and Writing
pandas中有两类实体类: the DataFrame and the Series.
-
DataFrame
A DataFrame is a table.
-
Series
A Series, by contrast, is a sequence of data values.
一般我们在读取的时候都是用DataFrame类进行装载数据
index_col=0这个参数表示我们用读到的数据第一列作为下标(pandas读取数据时会自动为每行设定从0开始不断累加的下标)
读取DataFrame中的列标签:
Indexing, Selecting & Assigning
我们能够通过DataFrame中的"attribute"(即可以看出每一列的key值),来访问一整列:
Indexing in pandas
通过iloc函数可以实现利用数值下标进行访问数据
通过loc函数可以实现利用attribute和条件进行访问数据
df.points.idxmax(),idxmax()函数可以查找处值最大的索引是什么
Assigning data
我们可以通过赋值单个数值进行整列自动赋值
也可以给出列表进行每行赋值
Summary Functions and Maps
Summary functions
我们可以使用describe()函数查看属性的描述性统计
当然上述describe()的值我们也可以单个拿出来,如:reviews.points.mean()
对数据进行统计展示:
Maps
map()函数可以对Series实体对象中的值按照给出的函数进行处理
而apply()函数则是对DataFrame实体对象的值按照给出的函数进行处理
需要注意的是上述操作并不改变原值,而是只是返回处理完后的新值而已
Grouping and Sorting
Groupwise analysis
groupby()函数有点像数据库中的group by,能够根据给定的属性进行分组,然后可以对每组进行集中操作,并给出各组处理后的结果
如上,首先就是对原始的DataFrame对象根据points进行分组(注意分完组后DataFrame对象被分成了points不同的DataFrame对象),然后对各个组进行取points属性的操作,再进行统计
分组可以简单理解为原来DataFrame中的行,只要符合points属于某个值就被分到某个组中去
还可以对组进行apply()
可以对组进行执行多个函数:
Multi-indexes
在进行分组后输出的DataFrame中的下标并不是我们之前见过的数值下标了:
仔细看红框中的内容,发现其将我们分组的数据作为下标了
打印出下标的类型
当然我最常使用的还是希望分组后,最为分组依据的数据还在,而且下标也是常见的数值下标
可以通过reset_index()函数,其返回一个新的DataFrame对象
Sorting
默认升序排序
sort_index()根据下标排序
标签:下标,函数,--,DataFrame,学习,points,分组,第三方,进行 From: https://www.cnblogs.com/cilinmengye/p/17779294.html多指标排序