python - 如何在熊猫列中创建单词的二进制表示?
问题描述
我有一列包含可变大小的列表。列表包含有限数量的短文本值。总共有大约 60 个唯一值。
0 ["AC","BB"]
1 ["AD","CB", "FF"]
2 ["AA","CC"]
3 ["CA","BB"]
4 ["AA"]
我想在我的数据框中创建此值列,如果值在此行中,则此列的值为 1,否则为 0。
我知道我可以扩展列表,然后调用 unique 并将它们设置为新列。但是之后我不知道该怎么办?
解决方案
这是一种方法:
df = pd.get_dummies(df.explode('val')).sum(level = 0)
注意:这(level=0)
有点像使用索引对内容进行分组的分组操作。所以,我更喜欢在爆炸数据框后使用它。
推荐阅读
- sql - 跨多个表使用 SQL 子查询
- java - 如何指定一个带有分类器的 jar 应该依赖于另一个带有分类器的 jar
- json - 是dart中json序列化所必需的tojson和fromjson方法吗
- android - 从警报管理器启动服务不起作用
- c# - 如何覆盖第 3 方 C# 应用程序的功能?
- python - 带有 Gunicorn 的 Django 一次只处理一个请求
- terraform - 用于创建 BQ 表模式的 Terraform 条件表达式
- javascript - 如何比较整数字符串?
- multithreading - 如何以编程方式监控线程创建 MacOS?(类似于 DLL_THREAD_ATTACH/DETACH)
- c# - gRPC 和 gRPC-Web 可以在 ASP.NET 中同时使用吗?