多对多的关系中从人员中随机取值

处理表格类数据


excel表
多对多的关系中从人员中随机取出三个类别并入库

import pandas as pd
import random

df = pd.read_excel('1.xlsx')
test_data=[]
for i in df.index.values:#获取行号的索引,并对其进行遍历:
    #根据i来获取每一行指定的数据 并利用to_dict转成字典
    row_data=df.ix[i,['人员','类别']].to_dict()
    test_data.append(row_data)
# print("最终获取到的数据是:{0}".format(test_data))

name_dict = {}
for data in test_data:
    name = data['人员']
    category = data['类别']
    if name not in name_dict.keys():
        name_dict[name] = []
    else:
        name_dict[name].append(category)

for k,v in name_dict.items():
    name_dict[k] = random.sample(v,3)
# print(name_dict)

熟练使用pandas读取表格
利用字典的特性得到人员对多类别的字典.并以列表的方式储存
random.sample(v,num) 对列表中的字符串进行随机取值

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值