当前位置: 首页 > 知识库问答 >
问题:

无法对使用String.Split创建的列中的元素进行计数,该列应该是列表

郭阳曜
2023-03-14

我正在与熊猫的df与有关netflix节目的信息。其中一列是一个字符串,其中包含所有参与生产的国家netflix_df['country']。我使用以下代码创建了一个附加列,该列旨在列出所有单个国家(因为有涉及多个国家的联合制作),名为netflix_df['list_of_countration']:

netflix_df['list_of_countries']=netflix_df['country'].str.split(',')

之后,我尝试创建一个名为Netflix_DF['number_of_countration']的新列,通过执行以下操作,该列包含了Netflix_DF[list_of_countration]列列表中的国家数:

netflix_df['number_of_countries'] = [len(c) for c in netflix_df['list_of_countries']]

然而,我得到了以下错误:typeerror:“float”类型的对象没有len()

这对我来说没有意义,因为列中填充的是列表,而不是浮动。我的代码出了什么问题?我会很感激你帮我的忙。非常感谢。

共有1个答案

尉迟京
2023-03-14

您可以获得每个列表的len,如下所示:

netflix_df['number_of_countries'] = netflix_df['list_of_countries'].apply(len)
 类似资料:
  • 考虑下面的数据集存储在熊猫数据文件<代码> DFX < /代码>: 我有一个函数是: 现在,我想在中创建一个新列,其中包含计算出的z值 查看其他SO示例,我尝试了几个变体,包括: 返回错误。正确的方法是什么?

  • 我有一个数据框,其中一些单元格包含多个值的列表。我不想在一个单元格中存储多个值,而是希望扩展dataframe,以便列表中的每个项都有自己的行(在所有其他列中都有相同的值)。因此,如果我有: 如何转换为长格式,例如: 索引并不重要,可以将现有列设置为索引,而最终的顺序并不重要。

  • 问题内容: 我想使用Python比较列表中的每个可能的对。 假设我有 我想对列表中2个元素的每个组合进行操作(我们称其为foo)。 最终结果应与 我的第一个想法是手动遍历列表两次,但这似乎不是很Python。 问题答案: 在模块中签出。它完全符合您的描述。 这等效于: 编辑: 有两个非常相似的功能,以及,和。为了说明它们之间的区别: 生成所有可能的元素对,包括所有重复项: 生成每个唯一元素对的所有

  • 问题内容: 我有一个数据框,其中某些单元格包含多个值的列表。我不想扩展一个单元格中的多个值,而是想扩展数据框,以便列表中的每个项目都有自己的行(所有其他列中的值都相同)。所以,如果我有: 如何转换为长格式,例如: 索引并不重要,可以将现有的列设置为索引也可以,最后的顺序也不重要。 问题答案: 结果: PS 在这里你可能会发现一些通用的解决方案 更新:一些解释:IMO了解此代码的最简单方法是尝试逐步

  • 我想将熊猫数据框中的所有列连接起来,用空格分隔 (" ").有没有比df['新栏目']=df['a'] " " df['b']"...

  • 我有一个现有的mysql表,有两列a和b。 现在我想在该表中添加一列c。 c应该是可空的,应该有一个默认值NULL,除了在b列的值为10的行中。其中b的值为10,c的值为X。 我知道使用SQL做这件事相当简单,但我想使用liquibase做这件事,因为我们在模式迁移中使用liquibase。