numpy模块&pandas模块

numpy模块

import pandas as pd
import numpy as np
df=pd.Series(np.array(['a','b']))
print(df)
datas=pd.date_range('20190101',periods=6)
print(datas)
values=np.random.rand(6,4)*10
print(values)
arr1=np.array([1,2,3])
arr2=np.array([4,5,6])
print(arr2*arr1)
arr2=np.array([[1,2,3],[4,5,6]])
print(arr2)
print(arr2.T)#将行变成列,将列变成行
print(arr2.astype(np.float64).dtype)
print(arr2.size)#数组中元素的个数
print(arr2.shape)#数组维度的元组
print(arr2.ndim)#数组的维度
print(arr2[1:,:])#第一个:控制行第二个:控制列
print(arr2[0,1],type(arr2[0,0]))#第0行的第1个
print(arr2[0,[0,1]])#第0行的第0到1个
print(arr2[0,0]+2)#第0行的第0个+2,变成第2个
arr1=np.array([[7,8,9],[10,11,12]])
print(np.hstack((arr1,arr2)))#hstack只接收1个参数,2个的话要用括号包起来行合并
print(np.vstack((arr2,arr1))) #列合并
print(np.concatenate((arr1,arr2)))#默认列合并
print(np.concatenate((arr1,arr2),axis=0))#1表示行;0表示列
print(np.zeros((5,5)))#形成提个5行5列的矩阵
print(np.ones((5,5))*100)#100可以改变5行5列矩阵的数值
print(np.eye(5))#返回一个二维数组,对角线为1,其他为0
print(np.arange(1,10,2))#生成一维的1到10列表,步长维2
print(np.linspace(0,20,10))#生成一个由10个0到20的小数组成的列表,平均分成10份
arr=np.zeros((5,5))#生成一个5行5列的矩阵
print(arr.reshape((1,25)))#将5行5列的矩阵重塑成1到25的二维矩阵

pandas模块

# pandas更多的是excel/csv文件处理,excel文件, 对numpy+xlrd模块做了一层封装


# pandas的数据类型

import pandas as pd
import numpy as np

## Series(现在一般不使用(一维))
df = pd.Series(np.array([1,2,3,4]))
print(df)


# DataFrame(多维)

dates = pd.date_range('20190101', periods=6, freq='M')
print(dates)

values = np.random.rand(6, 4) * 10
print(values)

columns = ['c1','c2','c3','c3']

df = pd.DataFrame(values,index=dates,columns=columns)
print(df)

'''
dtype	查看数据类型
index	查看行序列或者索引
columns	查看各列的标签
values	查看数据框内的数据,也即不含表头索引的数据
describe	查看数据每一列的极值,均值,中位数,只可用于数值型数据
transpose	转置,也可用T来操作
sort_index	排序,可按行或列index排序输出
sort_values	按数据值来排序
'''

print(df.dtypes)
print(df.index)
print(df.columns)
print(df.describe())
print(df.T)
posted @ 2019-08-26 19:36  暗夜幻羽  阅读(127)  评论(0编辑  收藏  举报