哪些函数能够创建numpy数组 panda 参数类型?
panda 参数类型?
Pandas中有三种主要的数据类型:系列、数据框架和面板。
r
Series可以理解为一维数组,但是索引可以自己改变。创建的方法统一为(数据,索引)。可以用三种形式创建series:python中的dict,numpy中的ndarray(Numpy中的基本数据结构)和一个特定的数值。索引赋值必须是列表类型。
r
DataFram
pandas dataframe可以实现SQL中的count case吗?
当我们使用Python进行数据分析时,有时我们可能需要根据数据帧中其他列的值向Pandas数据帧中添加一列。
虽然这听起来很简单,但是如果我们尝试使用if-else条件语句,可能会变得有点复杂。幸运的是,有一个简单而好的方法可以用numpy做到这一点!
要学习如何使用它,让 让我们来看一个具体的数据分析问题。我们有超过4000条AAA教育推文的数据集。带有图片的推文会获得更多的赞和转发吗?让 让我们做一些分析来找出答案!
我们将从导入pandas和numpy并加载数据集开始,看看它是什么样子的。
我们可以看到,我们的数据集包含了每条推文的一些信息,包括:
1)日期——推文发布的日期。
2)时间——推文发出的时间。
3)tweet-tweet的实际文本
4)提及——推文中提到的任何其他Twitter用户。
5)照片——推文中包含的任何图片的URL。
6)replies _ count——推文上的回复数量
7 7)retweets _ count-转发的推文数量
8)likes _ count——推文上的赞数。
我们还可以看到照片数据的格式有点奇怪。
使用np.where()添加具有正确/错误条件的pandas列。
在我们的分析中,我们只是想看看带有图片的推文是否能获得更多的互动,所以我们不 我真的不需要图片URL。让 我们尝试创建一个名为hasimage的新列,它将包含布尔值——如果tweet包含图像,则为True如果不包含图像,则为False。
为此,我们将使用numpy的内置where()函数。这个函数依次接受三个参数:我们要测试的条件,当条件为真时分配给新列的值,当条件为假时分配给新列的值。看起来是这样的:
在我们的在数据中,我们可以看到,没有图片的推文在这个照片列中总是有一个值。我们可以使用这些信息和np.where()创建一个新的列hasimage,如下所示:
在顶部,我们可以看到我们的新列已被添加到我们的数据集,并且推文已被正确标记,包括图像是真的,其他图像是假的。
现在我们有了hasimage专栏,让 让我们快速创建几个新的数据帧,一个用于所有图片推文,一个用于所有非图片推文。我们将使用布尔过滤器来做到这一点:
现在我们已经创建了这些,我们可以使用内置的数学函数。mean()快速比较每个数据帧中的推文。
我们将使用print()语句使结果更容易阅读。我们还需要记住使用str()来转换的计算结果。mean()转换成一个字符串,以便我们可以在打印的语句中使用它:
根据这些结果,似乎在AAA教育中包含图像可能会促进更多社交媒体的交互。有图推文的平均赞数和转发数是无图推文的3倍。
添加具有更复杂条件的熊猫列
这种方法效果很好,但是如果我们要添加一个条件更复杂的新列(超出True和False的条件)怎么办?
例如,为了更深入地研究这个问题,我们可能希望创建一些交互式 "层与并评估推文到达每一层的百分比。为了简单起见,让 的用户喜欢衡量互动性,并将推文分为四个级别:
1)tier_4 -2或更少的喜欢
2) Tier _ 3-3-9喜欢
3) Tier _ 2-10-15喜欢
4) Tier _ 1-16喜欢
为此,我们可以使用一个名为()的函数。我们给它两个参数:一个条件列表和一个对应的值列表,我们希望将这些值分配给新列中的每一行。
这意味着顺序很重要:如果条件满足列表中的第一个条件,列表中的第一个值将被分配给该行的新列。大数据分析使用numpy在熊猫数据框架上添加列。如果满足第二个条件,将分配第二个值,依此类推。
让 让我们看看它在Python代码中的样子:
干得好!我们创建了另一个新的专栏,根据我们的分级排名系统(尽管有些武断)对每条推文进行分类。
现在,我们可以用它来回答更多关于数据集的问题。例如,1级和4级推文中有图像的比例是多少?
在这里,我们可以看到,虽然图像似乎是有帮助的,他们不 这似乎不是成功的必要条件。是的。
虽然这是一个非常肤浅的分析,但是我们已经实现了我们真正的目标:根据关于现有列中的值的条件语句向pandas DataFrames添加列。
当然,这是一项可以通过多种完成的任务。其中()和()只是两个潜在的方法。
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。