【问题标题】:Pandas convert Series of strings to Series of lists of strings (of size 1) for encodingPandas 将字符串系列转换为字符串列表系列(大小为 1)以进行编码
【发布时间】:2018-10-06 04:52:18
【问题描述】:

我知道标题令人困惑,但让我解释一下。我正在尝试为 sklearn.MultiLableBinarizer 准备 Series',每个字符串都是一个单独的用户 ID,我想对其进行一次热编码。错误地,它正在迭代字符串的每个单独的字符。做series.apply(list) 做同样的事情,将每个字符串分成单独的字符。如果这个系列是这样的:

0 '3436803478'
1 '1230782212'
2 '7320482099'
...

那么我希望输出是

0 ['3436803478']
1 ['1230782212']
2 ['7320482099']
...

代替

0 ['3','4','3','6','8','0','3','4','7','8']
1 ['1','2','3','0','7','8','2','2','1','2']
2 ['7','3','2','0','4','8','2','0','9','9']
...

如果我使用单个值,我只会使用 ids = [[s] for s in values],但由于我们使用的是 Series 和 apply(),所以我需要类似函数名称的东西,但对于 []list() 不起作用,正如 here 解释的那样

注意:字符串实际上以整数开头,但我可以通过 .apply(str) 解决这个问题

【问题讨论】:

  • @SandeepKadapa 我在第一段中解释了s.apply(list) 拆分为单个字符,这是我不想要的。
  • 你能显示你的实际数据框架结构吗,虽然你已经完成了工作。

标签: python pandas one-hot-encoding


【解决方案1】:

链接s.apply(lambda x: [x]) 完美运行。

【讨论】:

    猜你喜欢
    • 2022-10-23
    • 2014-09-30
    • 2018-01-27
    • 2021-04-17
    • 2020-06-30
    • 1970-01-01
    • 2016-09-17
    • 2020-11-20
    • 2019-01-14
    相关资源
    最近更新 更多