![](https://img-blog.csdnimg.cn/20190918140037908.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Python学习笔记
本专栏主要分享python的学习过程。
天堑小雨润如酥
硕士研究生,从事于数据挖掘、人工智能和大数据方向。
欢迎大家一起交流!
展开
-
Python内置函数
函数含义abs(x)返回一个数的绝对值。参数可以是整数、浮点数或任何实现了__abs__()的对象。如果参数是一个复数,则返回它的模all(iterable)如果iterable的所有元素均为真值(或可迭代对象为空)则返回Trueany(iterable)如果iterable的任一元素为真值则返回True。如果可迭代对象为空,返回Falseascii(object)与repr()类似,返回一个包含对象的可打印表示形式的字符串,但是使用\x、\u和\U对repr(...原创 2022-01-12 00:16:59 · 74 阅读 · 0 评论 -
Python经典面试题目
1. 什么是Python?使用Python有什么好处?Python是一种编程语言,包含对象、模块、线程、异常和自动内存管理。Python的好处在于它简单易用、可移植、可扩展,内置数据结构,并且Python是开源的。2. 什么是PEP 8?PEP 8是一个编码约定,关于如何编写Python代码更具可读性。3. 什么是序列化和非序列化?Pickle模块接受任何Python对象并将其转换为字符串表示形式,并使用dump函数将其转储到文件中,此过程称为pickling。从存储的字符串表示中检索原始Pyth原创 2022-01-12 00:09:21 · 73 阅读 · 0 评论 -
pyhton常用模块
本文主要记录python常用的库原创 2022-01-12 00:06:27 · 74 阅读 · 0 评论 -
出现‘utf-8‘ codec can‘t decode byte 0xd5 in position 0: invalid continuation byte读取csv失败
1、python读取csv文件出现无效字节,解码失败问题这个时候往往是csv文件中包含有汉字的问题,这时候只需要在pd.read_csv( )加入enconding=‘gbk’去解码csv文件,然后就可以了。其他解码方式还有**‘utf-8’**等解码方式。...原创 2021-10-20 16:44:08 · 1911 阅读 · 0 评论 -
pandas学习笔记(一)
1、pandas两大库,Series和DataFrame,其中Series是处理数组。import pandas as pdimport numpy as nps = pd.Series([1,3,6,np.nan,44,1])print(s)"""0 1.01 3.02 6.03 NaN4 44.05 1.0dtype: float64"""2、关于DataFramedates = pd.date_range('2016010原创 2021-10-17 20:27:33 · 73 阅读 · 0 评论 -
pandas学习笔记(二)
本节主要介绍如何用pandas选择数据、处理数据。1、预备代码:dates = pd.date_range('20130101', periods=6)df = pd.DataFrame(np.arange(24).reshape((6,4)),index=dates, columns=['A','B','C','D'])""" A B C D2013-01-01 0 1 2 32013-01-02 4 5 6 72013原创 2021-10-17 20:36:07 · 48 阅读 · 0 评论 -
pandas学习笔记(三)
用pandas设置值1、准备数据dates = pd.date_range('20130101', periods=6)df = pd.DataFrame(np.arange(24).reshape((6,4)),index=dates, columns=['A','B','C','D'])""" A B C D2013-01-01 0 1 2 32013-01-02 4 5 6 72013-01-03 8 9原创 2021-10-17 20:40:17 · 49 阅读 · 0 评论 -
pandas学习笔记(四)
创建矩阵1、创建含 NaN 的矩阵:dates = pd.date_range('20130101', periods=6)df = pd.DataFrame(np.arange(24).reshape((6,4)),index=dates, columns=['A','B','C','D'])df.iloc[0,1] = np.nandf.iloc[1,2] = np.nan""" A B C D2013-01-01 0 NaN 2.原创 2021-10-17 20:42:44 · 69 阅读 · 0 评论 -
pandas学习笔记(五)
Pandas 导入导出1、读取CSV:import pandas as pd #加载模块#读取csvdata = pd.read_csv('student.csv')#打印出dataprint(data)2、将资料存取成pickle:data.to_pickle('student.pickle')# 用pickle.dump存到本地文件,所存数据的结构就是字典,# 而普通的file.write写入文件的是字符串。# 读取时,pickle.load返回的是一个字典,# fi原创 2021-10-17 20:45:22 · 64 阅读 · 0 评论 -
pandas学习笔记(六)
Pandas 合并 concat1、axis (合并方向):axis=0是预设值,因此未设定任何参数时,函数默认axis=0import pandas as pdimport numpy as np#定义资料集df1 = pd.DataFrame(np.ones((3,4))*0, columns=['a','b','c','d'])df2 = pd.DataFrame(np.ones((3,4))*1, columns=['a','b','c','d'])df3 = pd.DataFram原创 2021-10-17 20:48:49 · 58 阅读 · 0 评论 -
pandas学习笔记(七)
Pandas 合并 merge1、依据一组key合并,根据某一列的值合并:import pandas as pd#定义资料集并打印出left = pd.DataFrame({'key': ['K0', 'K1', 'K2', 'K3'], 'A': ['A0', 'A1', 'A2', 'A3'], 'B': ['B0', 'B1', 'B2', 'B3']})right = pd原创 2021-10-17 20:51:52 · 73 阅读 · 0 评论 -
pandas学习笔记(八)
Pandas plot 出图1、消防车创建一个Series创建一个Series# 随机生成1000个数据data = pd.Series(np.random.randn(1000),index=np.arange(1000)) # 为了方便观看效果, 我们累加这个数据data.cumsum()# pandas 数据可以直接观看其可视化形式data.plot()plt.show()2、发Dataframe 可视化:data = pd.DataFrame( np.random原创 2021-10-17 20:55:22 · 72 阅读 · 0 评论 -
numpy学习笔记(一)
下列所陈述的并非全都是矩阵操作,也可以是数组列表。1、数组/矩阵的维数:sth.ndim2、数组/矩阵的形状:sth.shape3、数组/矩阵的尺寸:sth.size4、生成多少个数:b=np.arange(4) #生成0,1,2,35、判断矩阵中的元素是否小于某个值:print(b<3)6、改变矩阵的形状:sth.reshape((2,2)) #变为2X2矩阵7、两个矩阵相乘:np.dot(a,b) 、a.dot(b)8、生成某个形状的随机矩阵:np.原创 2021-10-17 21:08:36 · 70 阅读 · 0 评论 -
numpy学习笔记(二)
array的多维数组分割1、按照行或者列分割:import numpy as npA = np.arange(12).reshape((3, 4))print(A)"""array([[ 0, 1, 2, 3], [ 4, 5, 6, 7], [ 8, 9, 10, 11]])"""print(np.split(A, 2, axis=1) # axis=1 为众向分割,axis=0为横向分割"""[array([[0, 1], [4,原创 2021-10-17 21:10:24 · 104 阅读 · 0 评论 -
numpy学习笔记(三)
Numpy copy & deep copy1、= 的赋值方式会带有关联性,改变任何一个值,则其他值都会改变。import numpy as npa = np.arange(4)# array([0, 1, 2, 3])b = ac = ad = ba[0] = 11print(a)# array([11, 1, 2, 3])b is a # Truec is a # Trued is a # True2、大概copy() 的赋值方式没有关联性b = a.原创 2021-10-18 08:29:16 · 54 阅读 · 0 评论 -
numpy学习笔记(四)
大家点个赞哈!!!利用numpy删除数据1、用于删除arrany类型的数组,数组不是列表:arr = np.append(arr1, [1], axis=0) #将[]内所有元素加到arr1中。注意会产生新的数组arr = np.delete(arr1,元素序号,axis=0) #若秩为2,axis=0表示行,axis=1表示列2、list增删元素:ls.append(arr[0]) #加单个元素,单个元素可以为listls.extend(list) #加个list,list原创 2021-10-18 08:49:19 · 50 阅读 · 0 评论 -
matplotlib学习笔记(一)
大家点个赞哈!!!1、尽管大多数情况下,matplotlib的默认值都足够好了,但在某些情况下,你可能还是想用自己的方式修饰这些属性。import numpy as npimport matplotlib.pyplot as pltX = np.linspace(-np.pi, np.pi, 256, endpoint=True)C,S = np.cos(X), np.sin(X)plt.plot(X,C)plt.plot(X,S)plt.show()2、你可以通过修改这些参数,观察结果原创 2021-10-18 08:51:40 · 56 阅读 · 0 评论 -
Matplotlib学习笔记(二)
大家点个赞!!!3、修改颜色和line宽度plt.figure(figsize=(10, 6), dpi=80)plt.plot(X, C, color='blue', linewidth=2.5, linestype='-')plt.plot(X, S, color="red", linewidth=2.5, linestyle="-")4、设置坐标轴范围plt.xlim(X.min() * 1.1, X.max() * 1.1)plt.ylim(C.min() * 1.1, C.max原创 2021-10-18 08:53:38 · 73 阅读 · 0 评论 -
Matplotlib学习笔记(三)
大家点个赞!!!7、添加legendlegend就是如下图所示的东西。这个需要调整两点:一个是参数label,一个是plot命令plt.legend()plt.plot(X, C, color="blue", linewidth=2.5, linestyle="-", label="cosine")plt.plot(X, S, color="red", linewidth=2.5, linestyle="-", label="sine")#frameon=True的话,右上角的声明会在一个框内原创 2021-10-18 08:55:51 · 60 阅读 · 0 评论 -
Matplotlib学习笔记(四)
大家点个赞!!!9、细节决定成败labels现在被红线和蓝线挡住了。我们可以把label的字条调大,让红蓝线变成半透明的。源代码和结果如下所示:for label in ax.get_xticklabels() + ax.get_yticklabels(): label.set_fontsize(16) label.set_bbox(dict(facecolor='white', edgecolor='None', alpha=0.65))10、matplotlib组件到目前为原创 2021-10-18 08:57:15 · 89 阅读 · 0 评论 -
matplotlib学习笔记(五)
大家点个赞!!!1、pyplot 教程:#只有一个列表的情况下import matplotlib.pyplot as pltplt.plot([1,2,3,4]) #纵坐标plt.ylabel('some numbers')# 纵坐标标签plt.show()import matplotlib.pyplot as pltplt.plot([1,2,3,4], [1,4,9,16], 'ro')# 横坐标,纵坐标分别列出来plt.axis([0, 6, 0, 20]) # 横坐标,纵坐原创 2021-10-18 09:02:44 · 103 阅读 · 0 评论