赞
踩
os.getcwd() //获取当前工作的目录,如:返回结果为:'C:\\Program Files\\Python36'
os.listdir(path) //列出path目录下所有的文件和目录名。Path参数可以省略,如:os.listdir(".")
os.remove(path) //删除path指定的文件,该参数不能省略。
os.rmdir(path) //删除path指定的目录,该参数不能省略。
os.mkdir(path) //创建path指定的目录,该参数不能省略。递归建立可用:os.makedirs()
os.path.split(path) //返回路径的目录和文件名,即将目录和文件名分开,而不是一个整体。此处只是把前后两部分分开而已。就是找最后一个'/'。
os.path.join(path, name)//连接目录和文件名,与os.path.split(path)相对。
os.chdir(path) //'change dir'改变目录到指定目录
os.path.basename(path) //返回文件名
os.path.dirname(path) //返回文件路径
os.walk(path) //返回的是一个三元组(root,dirs,files):
{ root 所指的是当前正在遍历的这个文件夹的本身的地址
dirs 是一个 list ,内容是该文件夹中所有的目录的名字(不包括子目录)
files 同样是 list , 内容是该文件夹中所有的文件(不包括子目录)
}
sys.path.insert(0,path) //使用sys.path.insert()方法可以临时添加搜索路径,方便更简洁的import其他包和模块。
import pandas as pd
df:任意的Pandas DataFrame对象,一个类似于一维数组的对象,它有一个数组标签,也称之为索引 (index)
s:任意的Pandas Series对象,类似于一个表格
导入数据:
pd.read_csv(filename) //从CSV文件导入数据
pd.read_json(json_string) //从JSON格式的字符串导入数据
pd.DataFrame(dict) //从字典对象导入数据,Key是列名,Value是数据
pd.read_excel(filename) //从Excel文件导入数据
导出数据
df.to_csv(filename) //导出数据到CSV文件
df.to_excel(filename) //导出数据到Excel文件
df.to_json(filename) //以Json格式导出数据到文本文件
创建测试对象
pd.DataFrame(np.random.rand(20,5)) //创建20行5列的随机数组成的DataFrame对象
pd.Series(my_list) //从可迭代对象my_list创建一个Series对象
查看、检查数据
df.head(n) //查看DataFrame对象的前n行
df.tail(n) //查看DataFrame对象的最后n行
df.shape() //查看行数和列数
df.info() //查看索引、数据类型和内存信息
数据选取
df[col] //根据列名,并以Series的形式返回列
df[[col1, col2]] //以DataFrame形式返回多列
s.iloc[0] //按位置选取数据
s.loc['index_one'] //按索引选取数据
df.iloc[0,:] //返回第一行
df.iloc[0,0] //返回第一列的第一个元素
df.values[:,:-1] //返回除了最后一列的其他列的所以数据
df.query('[1, 2] not in c') //返回c列中不包含1,2的其他数据集
数据处理
df[df[col] > 0.5] //选择col列的值大于0.5的行
df.sort_values(col1) //按照列col1排序数据,默认升序排列
df.sort_values(col2, ascending=False) //按照列col1降序排列数据
df.sort_values([col1,col2], ascending=[True,False]) //先按列col1升序排列,后按col2降序排列数据
df1.append(df2) //将df2中的行添加到df1的尾部
df.concat([df1, df2],axis=1) //将df2中的列添加到df1的尾部
df1.join(df2,on=col1,how='inner') //对df1的列和df2的列执行SQL形式的join
数据统计
df.describe() //查看数据值列的汇总统计
df.mean() //返回所有列的均值
df.corr() //返回列与列之间的相关系数
df.count() //返回每一列中的非空值的个数
df.max() //返回每一列的最大值
df.min() //返回每一列的最小值
df.median() //返回每一列的中位数
df.std() //返回每一列的标准差
创建数组array
# 创建数组array
import numpy as np
a = np.array([1,2,3]) #创建数组
b = np.array([(1.5,2,3), (4,5,6)],dtype=float)
c = np.array([(1.5,2,3), (4,5,6)],[(3,2,1), (4,5,6) ] ], dtype=float)
np.zeros((3,4)) #创建0数组
np.ones((2,3,4), dtype=np.int16) #创建1数组
d = np.arrange(10,25,5) #创建相同步数数组
np.linspace(0,2,9) #创建等差数组
e = np.full((2,2), 7) #创建常数数组
f = np.eye(2) #创建2x2矩阵
np.random.random((2,2)) #创建随机数组
np.empty((3,2)) #创建空数组
复制数组
#复制数组
h = a.view()
np.copy(a)
h = a.copy()
输出数组
# 输出数组array
import numpy as np
print(my_array) #打印数组
#saving &Loading on disk保存到磁盘
np.save('my_array', a)
np.savez('array.npz', a, b)
np.load('my_array.npy')
#saving &Loading Text files保存到文件
np.loadtxt("my file.txt")
np.genfromtxt("my_file.csv", delimiter=',')
np.savetxt("marry.txt", a, delimiter="")
Numpy中的基本运算
# 基本运算 import numpy as np #arithmetic operation算术运算 g = a - b np.subtract(a,b) #减法 b+a np.add(b,a) #加法 a / b np.divide(a,b) #除法 a * b np.multiple(a,b) #乘法 np.exp(b) #指数 np.sqrt(b) #开方 np.sin(a) #sin函数 np.cos(b) #cos函数 np.log(a) #log函数 e.dot(f) #内积 #Comparison比较 a == b #元素 a < 2 #元素 np.array_equal(a,b) #数组 #Aggregate Functions 函数 a.sum() #求和 b.min() #最小值 b.max(axis=0) #最大值数组列 b.cumsum(axis=1) #元素累加和 a.mean() #平均值 b.median() #中位数 a.corrcoef() #相关系数 np.std(b) #标准差
数组处理
# 数组处理 import numpy as np #Transposing Array I = np.transpose(b) #转置矩阵 i.T #转置矩阵 #Changing Array Shape b.ravel() #降为一维数组 g.reshape(3,-2) #重组 #Adding/Removing Elements h.resize((2,6)) #返回shape(2,6) np.append(h,g) #添加 np.insert(a,1,5) #插入 np.delete(a,[1]) #删除 #Combining Arrays np.concatenate((a,d), axis=0) #连结 np.vstack((a,b)) #垂直堆叠 np.r_[e,f] #垂直堆叠 np.hstack((e,f)) #水平堆叠 np.column_stack((a,d)) #创建水平堆叠 np.c_[a,d] ##创建水平堆叠 #splitting arrays np.hsplit(a,3) #水平分离 np.vsplit(c,2) #垂直分离
数组索引
# 数组索引 import numpy as np #subsetting a[2] #选取数组第三个元素 b[1,2] #选取2行3列元素 #slicing a[0:2] #选1到3元素 b[0:2,1] #选1到2行的2列元素 b[:1] #选所有1行的元素 c[1,...] #c[1,:,:] a[ : :-1] #反转数组 #Boolean Indexing a[a<2] #选取数组中元素<2的 #Fancy Indexing b[[1,0,1,0], [0,1,2,0]] #选取[1,0],[0,1],[1,2],[0,0] b[[1,0,1,0][:, [0,1,2,0]]] #选取矩阵的一部分
Numpy中的数据类型
# numpy中的数据类型
np.int64 #64位整数
np.float32 #标准双精度浮点
np.complex #复杂树已浮点128为代表
np.bool #true&false
np.object #python object
np.string_ #固定长度字符串
np.unicode_ #固定长度统一码
检查数组信息
# 检查数组信息
a.shape #数组维度
len(a) #数组长度
b.ndim #数组维度数量
e.size #数组元素数量
b.dtype #元素数据类型
b.dtype.name #数据类型名
b.astype(int) #改变数组类型
#asking for help更多信息
np.info(np.ndarray.dtype)
对数组进行排序
#对数组进行排序
a.sort()
c.sort(axis=0)
plt.figure()
import matplotlib.pyplot as plt plt.figure( num=None, figsize=None, dpi=None, facecolor=None, edgecolor=None, frameon=True, FigureClass=<class 'matplotlib.figure.Figure'>, clear=False, **kwargs) num:整数或字符串,可选,默认:无 figsize:(float, float), optional, default: None dpi:图形分辨率,整数,可选,默认:无 facecolor:背景颜色 edgecolor:边框颜色 frameon:bool,可选,默认值:True //如果为False,则禁止绘制图形框 FigureClass:图的子类 clear:bool,可选,默认值:True 如果为True且该图片已经存在,则清除它。
plt.imshow()
plt.imshow( X, cmap=None, norm=None, aspect=None, interpolation=None, alpha=None, vmin=None, vmax=None, origin=None, extent=None, shape=<deprecated parameter>, filternorm=1, filterrad=4.0, imlim=<deprecated parameter>, resample=None, url=None, *, data=None, **kwargs) X:图像数据 cmap:str或Colormap,可选 norm:正常化,可选 aspect:{'equal', 'auto'}或float,可选 ‘equal’:确保长宽比为1;’auto‘:自动调整长宽 interpolation:str,可选 'none', 'nearest', 'bilinear', 'bicubic', 'spline16', 'spline36', 'hanning', 'hamming', 'hermite', 'kaiser', 'quadric', 'catrom', 'gaussian', 'bessel', 'mitchell', 'sinc', 'lanczos' alpha:比例,可选 介于0(透明)和1(不透明)之间 vmin, vmax:比例,可选 当使用标量数据而没有明确的norm时,vmin和vmax定义了颜色映射所涵盖的数据范围 origin: {'upper', 'lower'},可选的
plt.subplot()
plt.subplot(nrows,ncols,index,**kwargs)
子图将在包含nrows行和ncols列的网格中占据索引位置。index从左上角的1开始,向右递增
plt.plot()
plt.plot(x,y,format_string,**kwargs)
x轴数据,
y轴数据,
format_string控制曲线的格式字串 ,format_string由颜色字符,风格字符,和标记字符
'b' blue
'g' green
'r' red
'c' cyan
'm' magenta
'y' yellow
'k' black
'w' white
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。