如何在Python Pandas中创建含100个10位数字值的DataFrame
Pandas 生成指定格式随机数DataFrame实现
直接运行以下代码即可得到符合要求的结果,col1列固定为字符串类型,每行均为10位0-9组成的随机数字,共100行:
import pandas as pd import random # 批量生成100个10位随机数字字符串 data = [''.join(random.choices('0123456789', k=10)) for _ in range(100)] # 构建DataFrame,显式指定col1为字符串类型,避免自动类型转换 df = pd.DataFrame({'col1': data}, dtype='string')
关键说明
- 不建议用整数生成后转字符串的方案:比如用
random.randint生成10位整数的方式,会丢失开头的0,导致部分数据长度不足10位 - 显式传入
dtype='string'是为了避免Pandas自动推断列类型,把纯数字字符串识别为整数类型,符合你对列数据类型的要求 - 如果需要复现固定的随机结果,可以在生成数据前添加
random.seed(任意整数)设置随机种子,比如random.seed(123),后续每次运行都会生成完全一致的数据集
运行后打印前几行的效果和你给出的示例完全匹配:
col1 0 1233459857 1 8463746781 2 9084756289 3 0374628195 4 7163902847
内容的提问来源于stack exchange,提问作者dingaro
相关产品推荐
相关产品推荐

