Pandas数据分析
Posted xmdykf
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Pandas数据分析 相关的知识,希望对你有一定的参考价值。
Series 和 DataFrame
Pandas库基本运用
-
Series 包含一维索引的一组数据
-
DataFrame 包含 index 和 column 两个轴
-
Panel 一种三维数据容器
import pandas as pd import numpy as np from pandas import Series, DataFrame
Series
# 1. 创建 Series 对象,从列表创建 s1 = pd.Series([100, 78, 59, 63]) # values 和 index 属性可以得到Series的数据和索引 s1.values s1.index # 2. 创建Series对象,从ndarry创建 # 指定的index必须与data长度相等 pd.Series(np.random.randn(5), index=[‘a‘, ‘b‘, ‘c‘, ‘d‘, ‘e‘]) # 3. 从字典创建 d = {‘a‘:0.12, ‘b‘:0.33, ‘c‘:-0.15} pd.Series(d) # 4. 将标量传入 data后,所有的索引对应的值都将会是该标量 pd.Series(2, index=[‘c‘, ‘s‘])
series的算术运算
Series 在算术运算中 会自动对齐 不同索引的数据
s1 = pd.Series([1, 2, 4, 5], index=[‘a‘, ‘b‘, ‘c‘, ‘d‘]) s2 = pd.Series([2, 3, 5, 6], index=[‘c‘, ‘a‘, ‘b‘, ‘d‘]) s1 + s2
唯一值个数统计
用 unique() 函数,其返回结果为一个数组,包含Series去重后的元素 跟 unique() 函数,相似的另一个函数是 value_counts(), 它可以查看每一个唯一元素频数
s3 = pd.Series(data=[‘a‘, ‘a‘, ‘b‘, ‘b‘]) s3.unique()
转换数据类型
astype()函数可以转换数据类型
s4 = pd.Series(data=[‘1.3‘, ‘2.2‘]) s5 = s4.astype(‘float32‘)
DataFrame
1 # 1. DataFrame的创建 2 d = {‘One‘: pd.Series([1., 2., 3.], index=[‘a‘, ‘b‘, ‘c‘]), ‘two‘: pd.Series([1., 2., 4.], index=[‘a‘, ‘b‘, ‘d‘])} 3 df = pd.DataFrame(d) 4 5 d = pd.DataFrame(d, index=[‘a‘, ‘b‘]) 6 7 d = pd.DataFrame(d, index=[‘a‘, ‘b‘], columns=[‘two‘, ‘three‘]) 8 # 通过 pd.index 和 pd.columns 可以快速得到DataFrame对象所有的索引和列名 9 print(df.index) 10 print(df.columns) 11 12 # 2. 筛选 13 df[df[‘One‘] > 1] 14 15 df.loc[‘a‘] # 通过标签选取某一行 16 df.loc[[‘a‘, ‘b‘], ‘One‘] 17 df.loc[[‘a‘, ‘d‘], ‘two‘] 18 df.loc[:, ‘One‘]
Panel
1 pnl = pd.Panel([[[10000,20000],[20000,23000],[40000,34000]],[[2,1],[0,0],[3,4]]], items=[‘营业额‘, ‘出差次数‘], major_axis=[‘1月‘,‘2月‘,‘3月‘], minor_axis=[‘张三‘,‘李四‘])
以上是关于Pandas数据分析 的主要内容,如果未能解决你的问题,请参考以下文章