GG资源网

学习python中的pandas有没有好的教程推荐?(python感悟心得)

当然是有的,首推就是官方教程,最新最全,只不过是英文的,其次就是中文社区,阅读方便,理解容易,但稍有滞后,下面我简单介绍一下,感兴趣的朋友可以尝试一下:

pandas官方教程

链接地址:https://pandas.pydata.org/docs/index.html

这是pandas的官方教程,最新最全,示例展示也最为丰富,从基础的pandas安装、数据结构(series、dataframe)到高级的各种数据框操作,这个文档都有详细介绍,不管你是零基础的初学者还是有一定经验的开发者,都可以从这里找到最新、最有价值的资料,但所有资料都是英文的,如果你英文基础不好,阅读起来可能会比较费力:

pandas中文社区

链接地址:https://www.pypandas.cn/

这是pandas的中文社区,资料来说也比较全面,但相对于官方教程来说,内容会有些许删减和浓缩,有些可能也不会是最新的(稍有滞后),阅读来说,非常方便,都是中文的,一目了然,尤其是对于英文基础不好的开发者,可以说是非常合适,同时官方自带有一些深度学习资料,包括线性回归、图像分类、情感分析、个性化推荐等,如果你对机器学习、推荐算法比较感兴趣,可以参考一下,边学习边应用,效果非常不错:

其他pandas教程

链接地址:https://www.yiibai.com/pandas

这也是一个非常不错的pandas教程网站,和中文社区一样,所有资料也都是以文档的形式在线学习,中文,阅读方便,容易理解,但内容也会稍有滞后,讲解来说,比较全面、循序渐进,从基础的包安装,到各种数据框操作,都有详细介绍,如果你是pandas初学者,可以说是非常合适,边学习边练习,效果也会非常不错:

目前就分享这3个不错的pandas教程吧,不管是对于初学还是深入学习来说,都完全够用了,只要你多看多练,很快就能掌握的,后期就是结合实际例子做专项训练,积累经验,网上也有相关教程和资料,介绍的非常详细,感兴趣的话,可以搜一下,希望以上分享的内容能对你有所帮助吧,也欢迎大家评论、留言进行补充。

#####

今天给大家分享一份Pandas速查表,看看如何 用一张图就能彻底搞定Pandas!

这份速查表一共有两页,我已经将它转换为图片?

经过一番研究,这两张图片一共覆盖了7个常用的Pandas操作?

1、数据创建

介绍了几种常用的DataFrame创建语法

2、数据重塑

这部分主要是一些在数据清洗中常用的方法,比如数据连接、数据排序、数据删除等,并且还对四个常用的操作给出了图示,理解起来简直不要太方便!

3、数据筛选

这一块区域主要是分别用行/列来讲解一些常用的数据查看、抽样、切片等操作,包含了tail、head、loc、iloc等非常重要的方法,并且同样给出了部分动画便于理解

4、数据探索

这一块主要给出了一些在进行探索性分析时常用的方法,比如max、min、count等,不过官方将apply放在这里,并没有展开讲解

5、数据修改

这两个区域为缺失值处理和创建新的列,重点用动画示例了assign和qcut方法,缺失值处理部分仅给出了两个方法,应该是偷懒了

6、数据分组

主要就是groupby和相关方法

7、数据连接

这里介绍的还是非常详细!用图片例子来展示pd.merge中的各种参数变化的不同,一看就懂

以上就是我对这份小抄的基本概括,其实大家应该清楚,仅仅靠靠两张图片根本没法把整个Pandas学明白,所以官方也有选择性的对一些重要的方法给出了详细的讲解,而有些功能则一笔带过,比如我之前?花很大力气介绍的pandas绘图功能仅给出了区区一角

所以你应该这样用这份小抄,把它当成速查表,「用于了解哪些操作可以用Pandas完成」在你不确定或者不明白如何处理数据时,通过这份速查表快速查到Pandas中的哪个方法可以完成,之后再进一步通过搜索学习对应的方法!

好了,以上就是本文全部内容。

关注我,获取高清、完整、可复制文字版本速查表方式。

#####

学习pandas最好的教程就是官方文档了,每一次python需要模块的更新,官方文档也会做相应的更新,官方的文档是英文的,如果翻译学习起来比较困难的话,一般在一些论坛里面也有中文翻译过来的文档,这样结合官方文档,学习pandas起来比较容易,pandas的本质是一种数据框的形式,内容跟excel操作学习相似,所以说,学习pandas的时候,里面的一些数据处理步骤,可以对比excel学习。

另外推荐CSDA论坛,这个论坛专为学习编程的IT人士建立,里面的好多内容都可以参考学习!

祝你学习愉快!

学习python中的pandas有没有好的教程推荐?(python感悟心得)
#####

英文过关的话,首选pandas官方教程,链接地址:https://pandas.pydata.org/docs/index.html

希望看视频学习的话,可以看看我的《Python数据分析--玩转Pandas》,链接地址:https://study.163.com/course/courseMain.htm?courseId=1005071007

#####

  Python的pandas库是使Python成为用于数据分析的出色编程语言的一件事。Pandas使导入,分析和可视化数据变得更加容易。它建立在NumPy和matplotlib之类的软件包的基础上,使您可以方便地进行大部分数据分析和可视化工作。

  在此Python数据科学教程中,我们将使用Eric Grinstein抓取的数据,使用Pandas分析来自流行的视频游戏评论网站IGN的视频游戏评论。哪个主机赢得了“控制台大战”(就游戏的审查而言)?该数据集将帮助我们找出答案。

  当我们分析视频游戏评论时,我们将了解关键的Pandas概念,例如索引。您可以继续进行下去,并在我们的许多其他Python教程之一中或通过注册Python Pandas课程来了解有关Python和Pandas的更多信息。我们的许多其他数据科学课程也都使用Pandas。

  谨记一下,本教程使用Python 3.5编写,并使用Jupyter Notebook构建。您可能使用的是Python,pandas和Jupyter的更新版本,但结果应该基本相同。

  用Pandas导入数据

  如果您正在使用本教程,则需要下载数据集,您可以在此处进行操作。

  我们将采取的第一步是读取数据。数据以逗号分隔的值或csv文件存储,其中每行用换行分隔,每列用逗号(,)分隔。这是ign.csv文件的前几行:

  如您在上方看到的,文件中的每一行代表一个游戏,该游戏已经过IGN审查。这些列包含有关该游戏的信息:

  1)score_phrase— IGN如何用一个词形容游戏。这链接到它收到的分数。

  2)title -游戏名称。

  3)url —您可以在其中查看完整评论的URL。

  4)platform -审查游戏的平台(PC,PS4等)。

  5)score—游戏的得分,从1.0到10.0。

  6)genre —游戏类型。

  7)editors_choice- N如果游戏不是编辑选择的Y话,那么是。这与得分息息相关。

  8)release_year -游戏发布的年份。

  9)release_month -游戏发布的月份。

  10)release_day -游戏发布的那天。

  还有一个前导列,其中包含行索引值。我们可以放心地忽略此列,但稍后将深入探讨哪些索引值。

  为了在Python和pandas中有效地处理数据,我们需要将csv文件读取到Pandas DataFrame中。DataFrame是表示和处理表格数据的一种方式,表格数据是表格形式的数据,例如电子表格。表格数据具有行和列的格式,就像我们的csv文件一样,但是如果我们可以将其作为表格查看,则对我们来说更易于阅读和排序。

  为了读入数据,我们需要使用pandas.read_csv函数。此函数将接收一个csv文件并返回一个DataFrame。以下代码将:

  a.导入pandas库。我们将其重命名为,pd以便更快地输入。这是数据分析和数据科学中的标准约定,您经常会看到导入的Pandas就像pd其他人的代码一样。

  b.读ign.csv入一个DataFrame,并将结果分配给一个名为的新变量,reviews以便我们可以reviews用来引用我们的数据。

  读完DataFrame后,以更直观的方式看一下我们所获得的内容将很有帮助。Pandas方便地为我们提供了两种方法,可以快速地将数据打印到表中。这些功能是:

  1)DataFrame.head()—打印DataFrame的前N行,其中N是您作为参数传递给函数的数字,即DataFrame.head(7)。如果不传递任何参数,则默认值为5。

  2)DataFrame.tail()—打印DataFrame的最后N行。同样,默认值为5。

  我们将使用该head方法查看其中的内容reviews:

  我们还可以访问pandas.DataFrame.shape属性,以查看以下行reviews:

  如我们所见,所有内容均已正确读取-我们有18,625行和11列。

  与类似的NumPy这样的Python软件包相比,使用Pandas的一大优势是Pandas允许我们拥有具有不同数据类型的列。在我们的数据集中,reviews我们有存储浮点值(如)score,字符串值(如score_phrase)和整数(如)的列release_year,因此在此处使用NumPy会很困难,但Pandas和Python可以很好地处理它。

  现在我们已经正确地读取了数据,让我们开始建立索引reviews以获取所需的行和列。

  用Pandas索引DataFrames

  之前,我们使用了该head方法来打印的第一5行reviews。我们可以使用pandas.DataFrame.iloc方法完成同样的事情。该iloc方法允许我们按位置检索行和列。为此,我们需要指定所需行的位置以及所需列的位置。下面的代码将reviews.head()通过选择行0到5,以及数据集中的所有列来复制我们的结果:

  让我们更深入地研究我们的代码:我们指定了想要的rows 0:5。这意味着我们想要从position 0到(但不包括)position的行5。

  第一行被认为是在位置0,所以选择行0:5给了我们行的位置0,1,2,3,和4。我们也需要所有列,并且使用快捷方式来选择它们。它的工作方式是这样的:如果我们不喜欢第一个位置值,例如:5,那是假设我们的意思0。如果我们忽略了最后一个位置值(如)0:,则假定我们是指DataFrame中的最后一行或最后一列。我们需要所有列,因此只指定了一个冒号(:),没有任何位置。这使我们的列从0到最后一列。以下是一些索引示例以及结果:

  1)reviews.iloc[:5,:]—第一5行,以及这些行的所有列。

  2)reviews.iloc[:,:] —整个DataFrame。

  3)reviews.iloc[5:,5:]—从位置5开始的行,从位置开始的列5。

  4)reviews.iloc[:,0] —第一列,以及该列的所有行。

  5)reviews.iloc[9,:] —第十行,以及该行的所有列。

  按位置索引与NumPy索引非常相似。如果您想了解更多信息,可以阅读我们的NumPy教程。现在我们知道了如何按位置索引,让我们删除第一列,该列没有任何有用的信息:

  在Pandas中使用标签在Python中建立索引

  既然我们知道如何按位置检索行和列,那么值得研究使用DataFrames的另一种主要方法,即按标签检索行和列。与NumPy相比,Pandas的主要优势在于,每一列和每一行都有一个标签。可以处理列的位置,但是很难跟踪哪个数字对应于哪个列。

  我们可以使用pandas.DataFrame.loc方法处理标签,该方法允许我们使用标签而不是位置进行索引。我们可以reviews使用以下loc方法显示前五行:

  上面的内容实际上与并没有太大的不同reviews.iloc[0:5,:]。这是因为尽管行标签可以采用任何值,但我们的行标签与位置完全匹配。您可以在上方表格的最左侧看到行标签(它们以粗体显示)。您还可以通过访问DataFrame 的index属性来查看它们。我们将显示的行索引reviews:

  reviews.index

  Int64Index([0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, ...], dtype=\'int64\')

  不过,索引不一定总是与位置匹配。在下面的代码单元中,我们将:

  a.获取行10至行20的reviews,并分配结果some_reviews。

  b.显示的第一5行some_reviews。

  如上所示,在中some_reviews,行索引始于,10结束于20。因此,尝试loc使用小于10或大于的数字20将导致错误:

  some_reviews.loc[9:21,:]

  如前所述,在使用数据时,列标签可以使工作变得更加轻松。我们可以在loc方法中指定列标签,以按标签而不是按位置检索列。

  我们还可以通过传入列表来一次指定多个列:

  Pandas系列对象

  我们可以通过几种不同的方式在Pandas中检索单个列。到目前为止,我们已经看到了两种语法:

  1)reviews.iloc[:,1] —将检索第二列。

  2)reviews.loc[:,\\\"score_phrase\\\"] —还将检索第二列。

  还有第三种甚至更容易的方法来检索整列。我们可以在方括号中指定列名称,例如使用字典:

  我们还可以通过以下方法使用列列表:

  当我们检索单个列时,实际上是在检索Pandas Series对象。DataFrame存储表格数据,而Series存储数据的单列或单行。

  我们可以验证单个列是否为系列:

  我们可以手动创建系列以更好地了解其工作原理。要创建一个Series,我们在实例化它时将一个列表或NumPy数组传递给Series对象:

  系列可以包含任何类型的数据,包括混合类型。在这里,我们创建一个包含字符串对象的系列:

  在Pandas中创建一个DataFrame

  我们可以通过将多个Series传递到DataFrame类中来创建DataFrame。在这里,我们传入刚刚创建的两个Series对象,

  s1作为第一行,s2作为第二行:

  我们还可以使用列表列表完成同样的事情。每个内部列表在结果DataFrame中被视为一行:

  我们可以在创建DataFrame时指定列标签:

  以及行标签(索引):

  还请注意,不需要缩进和单独的行。我们已经以这种方式编写了代码,以使其更易于解析,但是您经常会遇到将它们全部写成一行的情况。例如,以下代码将产生与我们在本段上方的表中看到的结果完全相同的结果:

  无论如何,添加标签后,便可以使用它们对DataFrame进行索引:

  columns如果将字典传递给DataFrame构造函数,则可以跳过指定关键字参数的操作。这将自动设置列名称:

  PandasDataFrame方法

  如前所述,pandas DataFrame中的每一列都是Series对象:

  我们可以在Series对象上调用与在DataFrame上可以调用的大多数相同的方法,包括head:

  Pandas Series和DataFrames还具有其他使计算更简单的方法。例如,我们可以使用pandas.Series.mean方法来查找Series的均值:

  我们还可以调用类似的pandas.DataFrame.mean方法,该方法默认情况下将查找DataFrame中每个数字列的平均值:

  我们可以修改axis关键字参数以mean计算每行或每列的平均值。默认情况下,axis等于0,并将计算每列的平均值。我们还可以将其设置1为计算每行的平均值。请注意,这只会计算每行中数值的平均值:

  reviews.mean(axis=1)

  0 510.500

  1 510.500

  2 510.375

  3 510.125

  4 510.125

  5 509.750

  6 508.750

  7 510.250

  8 508.750

  9 509.750

  10 509.875

  11 509.875

  12 509.500

  13 509.250

  14 509.250

  ...

  18610 510.250

  18611 508.700

  18612 509.200

  18613 508.000

  18614 515.050

  18615 515.050

  18616 508.375

  18617 508.600

  18618 515.025

  18619 514.725

  18620 514.650

  18621 515.000

  18622 513.950

  18623 515.000

  18624 515.000

  Length: 18625, dtype: float64

  Series和DataFrames上有很多类似的方法mean。这里有一些方便的东西:

  1)pandas.DataFrame.corr —查找DataFrame中各列之间的相关性。

  2)pandas.DataFrame.count —计算每个DataFrame列中非空值的数量。

  3)pandas.DataFrame.max —在每一列中找到最大值。

  4)pandas.DataFrame.min —查找每一列中的最小值。

  5)pandas.DataFrame.median —查找每列的中位数。

  6)pandas.DataFrame.std —查找每列的标准偏差。

  例如,我们可以使用该corr方法查看是否有任何列与关联score。这可以告诉我们最近发布的游戏获得了更高的评价(release_year),还是在年底之前发布的游戏获得了更好的评分(release_month):

  正如我们在上面看到的那样,我们的数字列都没有与关联score,因此我们知道发布时间与评论评分并不线性相关。

  DataFrame Math与Pandas

  我们还可以使用pandas在Python中的Series或DataFrame对象上执行数学运算。例如,我们可以将score列中的每个值除以2以将刻度从0– 切换10到0– 5:

  reviews[\\\"score\\\"] / 2

  0 4.50

  1 4.50

  2 4.25

  3 4.25

  4 4.25

  5 3.50

  6 1.50

  7 4.50

  8 1.50

  9 3.50

  10 3.75

  11 3.75

  12 3.50

  13 4.50

  14 4.50

  ...

  18610 3.00

  18611 2.90

  18612 3.90

  18613 4.00

  18614 4.60

  18615 4.60

  18616 3.75

  18617 4.20

  18618 4.55

  18619 3.95

  18620 3.80

  18621 4.50

  18622 2.90

  18623 5.00

  18624 5.00

  Name: score, Length: 18625, dtype: float64

  所有常用的数学运算符在Python的工作,如+,-,*,/,和^将在系列或DataFrames大Pandas的工作,并且将适用于每一个元素在一个数据帧或一个系列。

  Pandas中的布尔索引

  现在我们已经了解了一些Pandas的基础知识,让我们继续进行分析。我们前面看到的,平均都在值的score列reviews左右7。如果我们想找到所有得分都高于平均水平的游戏怎么办?

  我们可以先进行比较。比较会将“系列”中的每个值与指定值进行比较,然后生成一个“系列”,其中包含表示比较状态的布尔值。使用Python Pandas分析视频游戏数据https://www.aaa-cg.com.cn/data/2310.html例如,我们可以看到哪些行的score值大于7:

  score_filter = reviews[\\\"score\\\"] > 7

  score_filter

  0 True

  1 True

  2 True

  3 True

  4 True

  5 False

  6 False

  7 True

  8 False

  9 False

  10 True

  11 True

  12 False

  13 True

  14 True...

  18610 False

  18611 False

  18612 True

  18613 True

  18614 True

  18615 True

  18616 True

  18617 True

  18618 True

  18619 True

  18620 True

  18621 True

  18622 False

  18623 True

  18624 True

  Name: score, Length: 18625, dtype: bool

  有了布尔系列后,我们可以使用它来选择DataFrame中该系列包含value的行True。所以,我们只能选择行reviews,其中score大于7:

  可以使用多个条件进行过滤。假设我们要查找针对发行Xbox One的得分超过的游戏7。在下面的代码中,我们:

  a.设置两个条件的过滤器:

    1)检查是否score大于7。

    2)检查是否platform相等Xbox One

  b.应用过滤器以reviews仅获取所需的行。

  c.使用head方法打印的第一5行filtered_reviews。

  在使用多个条件进行过滤时,将每个条件放在括号中并用一个&符号(&)分隔是很重要的。

  Pandas图

  现在我们知道如何过滤,我们可以创建图以观察的回顾分布Xbox One与的回顾分布PlayStation 4。这将帮助我们确定哪个控制台具有更好的游戏。

  我们可以通过直方图来做到这一点,该直方图将绘制不同得分范围内的频率。我们可以使用pandas.DataFrame.plot方法为每个控制台制作一个直方图。该方法利用幕后的流行Python绘图库matplotlib生成美观的绘图。

  该plot方法默认为绘制折线图。我们需要传入关键字参数kind=\\\"hist\\\"来绘制直方图。在下面的代码中,我们:

  a.致电%matplotlib inline以在Jupyter笔记本中设置绘图。

  b.过滤reviews以仅包含有关的数据Xbox One。

  c.绘制score列。

  我们也可以对PS4:

  从我们的直方图中可以看出,与相比,PlayStation 4具有更高评级的游戏Xbox One。

  显然,这只是冰山一角,涉及到我们可以用来分析该数据集的潜在方向,但我们已经有了一个很好的开端:我们已经使用Python和pandas导入了数据集,并学会了使用各种不同的索引方法选择我们想要的数据点,并进行了一些快速的探索性数据分析,以回答我们开始时遇到的问题。

https://www.toutiao.com/i6832518344541733380/

#####

学习pandas最好的教程就是官方文档了,每一次python需要模块的更新,官方文档也会做相应的更新,官方的文档是英文的,如果翻译学习起来比较困难的话,一般在一些论坛里面也有中文翻译过来的文档,这样结合官方文档,学习pandas起来比较容易,pandas的本质是一种数据框的形式,内容跟excel操作学习相似,所以说,学习pandas的时候,里面的一些数据处理步骤,可以对比excel学习。

另外推荐CSDA论坛,这个论坛专为学习编程的IT人士建立,里面的好多内容都可以参考学习!

祝你学习愉快!

#####

百战程序员IT问题专业解答

学习pandas最好的教程就是官方文档了,每一次python需要模块的更新,官方文档也会做相应的更新,官方的文档是英文的,如果翻译学习起来比较困难的话,一般在一些论坛里面也有中文翻译过来的文档,这样结合官方文档,学习pandas起来比较容易,pandas的本质是一种数据框的形式,内容跟excel操作学习相似,所以说,学习pandas的时候,里面的一些数据处理步骤,可以对比excel学习

#####

Pandas的官网就是,有翻译的中文版,一步步来,有不明白的再另外百度。其他教程都是里面截取的。

由于网站搬家,部分链接失效,如无法下载,请联系站长!谢谢支持!
1. 带 [亲测] 说明源码已经被站长亲测过!
2. 下载后的源码请在24小时内删除,仅供学习用途!
3. 分享目的仅供大家学习和交流,请不要用于商业用途!
4. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!
5. 本站所有资源来源于站长上传和网络,如有侵权请邮件联系站长!
6. 没带 [亲测] 代表站长时间紧促,站长会保持每天更新 [亲测] 源码 !
7. 盗版ripro用户购买ripro美化无担保,若设置不成功/不生效我们不支持退款!
8. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
9. 如果你也有好源码或者教程,可以到审核区发布,分享有金币奖励和额外收入!
10.如果您购买了某个产品,而我们还没来得及更新,请联系站长或留言催更,谢谢理解 !
GG资源网 » 学习python中的pandas有没有好的教程推荐?(python感悟心得)

发表回复

CAPTCHAis initialing...