Pandas介绍
Pandas 是 Python 语言的一个扩展程序库,用于数据分析。
Pandas 是一个开放源码、BSD 许可的库,提供高性能、易于使用的数据结构和数据分析工具。
Pandas 名字衍生自术语 "panel data"(面板数据)和 "Python data analysis"(Python 数据分析)。
Pandas 一个强大的分析结构化数据的工具集,基础是 Numpy(提供高性能的矩阵运算)。
Pandas 可以从各种文件格式比如 CSV、JSON、SQL、Microsoft Excel 导入数据。
Pandas 可以对各种数据进行运算操作,比如归并、再成形、选择,还有数据清洗和数据加工特征
数据结构
Series 是一种类似于一维数组的对象,它由一组数据(各种Numpy数据类型)以及一组与之相关的数据标签(即索引)组成。
DataFrame 是一个表格型的数据结构,它含有一组有序的列,每列可以是不同的值类型(数值、字符串、布尔型值)。
DataFrame 既有行索引也有列索引,它可以被看做由 Series 组成的字典(共同用一个索引)。
Pandas 应用
Pandas 的主要数据结构是 Series (一维数据)与 DataFrame(二维数据),这两种数据结构足以处理金融、统计、社会科学、工程等领域里的大多数典型用例。
'''pandas基本介绍'''
'''
如果把numpy比作列表的话,pandas更像是字典形式的numpy
'''
'''
定义DataFrame的两种方式:
1.直接导入字典
2.导入自动生成的
'''
import numpy as np
import pandas as pd
s = pd.Series([1, 2, 3, 33, np.nan, 44, 1]) # 序列他比列表多了一个index
print("# 会生成两列,一列是index,一列是数组的值:\n", s, end="\n\n")
# date_range()是pandas中常用的函数,用于生成一个固定频率的DatetimeIndex时间索引。原型:
# date_range(start=None, end=None, periods=None)
datas = pd.date_range('20190101', periods=7)
print("# periods=7,说明会生成7个时间,开始时间为20190101:\n",datas,end="\n\n")
# 使用DataFrame创建表格 index默认行索引,columns默认列索引
df = pd.DataFrame(np.random.randn(7, 4), index=datas, columns=['a', 'b', 'c', 'd'])
print("# 使用DataFrame创建表格 index默认行索引,columns默认列索引:\n",df,end="\n\n")
'''
| a b c d
--------------------------------------------------
datas |
| a b c d
2019-01-01 1.390443 0.943523 -0.250015 -0.937293
2019-01-02 0.478537 0.891622 -0.009471 0.772718
2019-01-03 -0.620127 -1.297744 0.352404 -1.449165
2019-01-04 -0.002273 1.373092 -0.290291 -0.153854
2019-01-05 -1.335555 0.107416 -0.166542 0.913456
2019-01-06 -0.648300 -2.056751 -1.879867 0.850983
2019-01-07 0.295561 0.214722 0.222594 1.474603
'''
'''如果没有给行列的索引,就会默认0,1,2.....作为行列索引'''
# df1 = pd.DataFrame(np.arange(12).reshape((3,4)))
# print(df1)
#
# df2 = pd.DataFrame({'A': 1.,
# 'B': pd.date_range('20190101', periods=4), # pd.Timestamp('20130102')
# 'C': pd.Series(1,index=list(range(4)),dtype='float32'),
# 'D': np.array([3]*4,dtype='int32'),
# 'E': pd.Categorical(["test", "train", "test", "train"]),
# 'F': 'foo'})
# print(df2)
# '''
# A B C D E F
# 0 1.0 2019-01-01 1.0 3 test foo
# 1 1.0 2019-01-02 1.0 3 train foo
# 2 1.0 2019-01-03 1.0 3 test foo
# 3 1.0 2019-01-04 1.0 3 train foo
# '''
# print(df2.dtypes)
# print(df2.columns)
# print(df2.values)
# print(df2.describe()) # 数据帧描述
# print(df1.T)
# print(df2.sort_index(axis=1, ascending=False)) # ascending = False 表示倒叙输出,axis = 1表示按照列输出
# print(df2.sort_index(axis=0, ascending=False)) # ascending = False 表示倒叙输出,axis = 1表示按照列输出
# print(df2.sort_values(by = 'E')) # 'sort_values(by = '排序规则')'按照E中的值进行排序
版权声明:本文为weixin_39887317原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。