我们可以str.split
分解
,然后使用值\u计数
:
out = (
df['genre'].str.split('/')
.explode()
.value_counts()
.rename_axis('Genre')
.reset_index(name='count')
)
或str.get\u dummies
sum
和sort\u值
:
out = (
df['genre'].str.get_dummies('/').sum()
.rename('Genre')
.reset_index(name='count')
.sort_values('count', ascending=False, ignore_index=True)
)
out
:
Genre count
0 Animation 2
1 Sci-Fi 2
2 Action 1
3 Adventure 1
4 Drama 1
5 Mystery 1
collections.Counter()
是您的朋友。您可以使用dataframe
构造函数将结果dict转换为数据帧。
import pandas as pd
import collections
df = pd.DataFrame(
[
["movie 1", "Action/Animation/Sci-Fi"],
["movie 2", "Adventure/Animation/Drama/Mystery/Sci-Fi"],
],
columns=["Movie", "Genre"],
)
ctr = collections.Counter()
for r in df["Genre"]:
ctr.update(r.split("/"))
print(ctr)
# output: Counter({'Animation': 2, 'Sci-Fi': 2, 'Action': 1, 'Adventure': 1, 'Drama': 1, 'Mystery': 1})
问题内容: 到目前为止,我的代码是这样的: 我想添加一个代码,该代码可以计算来自模式(此路径中的42个txt文件)中的唯一单词,但我不知道该怎么做。有谁能够帮助我? 问题答案: 在Python中计算对象的最佳方法是使用为此目的而创建的类。它的行为类似于Python字典,但计数时使用起来稍微容易一些。您只需传递对象列表,它就会自动为您计数。 Counter也有一些有用的方法,例如most_commo
我正在使用一个从“标题”中搜索用户输入的搜索框。除此之外,我想仅在用户输入对应于“标题”列的情况下计算另一列“主题”中的一些关键字。但问题是如何找到我在查询中提到的仅有的单词的计数,即。 标题 因此,如果我在文本框中搜索了一个,那么我如何从主题中获得单词1的数量,其中标题字段中只有一个,然后其他单词的数量相似,这样我就可以得到如下输出: 您的搜索a包含: word1(3) word2(5) wor
问题内容: 我有一个包含一些信息的对象数组。我无法按照我想要的顺序进行渲染,因此我需要一些帮助。我这样渲染它们: 是否可以在该功能中对它们进行升序排序,或者我必须在使用map之前对它们进行排序? 问题答案: 这可能是您要寻找的: 该方法 将变异原始数组。因此,我使用该方法创建了一个新数组。字段上的排序应适用于可排序的实体,例如字符串和数字。
问题内容: 我有一个pandas数据框。我想按升序打印其列之一的唯一值。这就是我的做法: 问题是我得到了输出。 问题答案: 从iterable中返回一个新的排序列表。 码 输出值
问题内容: 需要在中找到唯一的行。 例如: 我知道我可以创建一个set并在数组上循环,但是我正在寻找一种有效的纯numpy解决方案。我相信有一种方法可以将数据类型设置为,然后我可以使用,但我不知道如何使它工作。 问题答案: 从NumPy 1.13开始,你可以简单地选择轴来选择任何N维数组中的唯一值。要获得唯一的行,可以执行以下操作:
这就是问题所在:给定一个字符串,计算以“y”或“z”结尾的单词的数量——因此“重”中的“y”和“fez”中的'z”都会计数,但“黄色”中的‘y’不会计数(不区分大小写)。如果一个单词后面没有一个字母,我们会说一个y或z在单词的末尾。(注意:Character.islet(char)测试char是否为字母。) 这是我的代码: 我知道这很混乱,但我只是想弄清楚为什么现在不行。每次运行都返回“0”。在i