python - 如何为熊猫数据框添加唯一的字母数字 ID?
问题描述
我需要一个解决方案,我可以为我的数据框生成唯一的字母数字 id 列。即使我以后运行脚本,我也需要保持相同的 ID。
Name
Sam
Pray
Brad
我可以根据这篇文章生成 id,但我需要 5 位数字的 aplhanumeric 值,这些值将始终保持不变。
这是所需的输出:
Name ID
Sam X25TR
Peter WE558
Pepe TR589
解决方案
此函数生成具有给定长度的随机字母数字字符串:
import math
import secrets
def random_alphanum(length: int) -> str:
text = secrets.token_hex(nbytes=math.ceil(length / 2))
isEven = length % 2 == 0
return text if isEven else text[1:]
df['ID'] == random_alphanum(5)
应用于整行:
df2['ID'] = df2.apply(lambda x: random_alphanum(5), axis=1, result_type="expand")
推荐阅读
- swift - Xcode 11.3.1 中 SceneKit 中的粒子系统文件在哪里
- string - UTF-16 编码 - 为什么使用复杂的代理对?
- flutter - Flutter OneSignal 推送通知问题
- amazon-web-services - AWS CloudFormation:路由表未填充
- vue.js - 最新 Vue 中的自定义无线电组件在最新 Safari 中根本不起作用
- java - 冒泡排序代码中临时整数的作用是什么
- linux - 为什么 echo -n "100" | wc -c 输出 3?
- java - 在不消耗这些记录的情况下查找 kafka 主题中的记录数
- java - 在 JavaFX 中加载新窗口
- servicestack - 反序列化嵌套属性