楼主: casey_c
1412 1

[程序分享] 随机数据集的构建与汇总处理 [推广有奖]

  • 0关注
  • 10粉丝

博士生

92%

还不是VIP/贵宾

-

威望
0
论坛币
96 个
通用积分
2.1003
学术水平
2 点
热心指数
15 点
信用等级
2 点
经验
11502 点
帖子
278
精华
0
在线时间
94 小时
注册时间
2016-11-22
最后登录
2022-5-2

楼主
casey_c 发表于 2017-8-1 10:55:52 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币



以下内容转自 数析学院,只节选了部分,有需要的同学可以直接查看原文


简介
使用随机数生成函数自行构建婴儿名字数据框,并介绍基本的数据框处理方法。


数据来源 - 使用随机数生成函数自行创建婴儿的名字以及数量数据集。
数据准备 - 数据准备 - 从自行创建的数据集中读取所需数据,并进行缺失、异常数据的查看及处理。
分析目标 - 简单地找到在 1880 年最流行的名字。
数据可视化 - 通过表格数据和图表,清晰地展示分析结果。


首先导入 pandas 和 matplotlib 等相关库:
  1. # 导入教程中所需的全部库
  2. import pandas as pd
  3. from numpy import random
  4. import matplotlib.pyplot as plt
  5. import sys #只是用来确定 Python 版本号
  6. import matplotlib #只是用来确定 Matplotlib 确定版本号

  7. # 能够内联查看绘图,能够直接在单元格内显示
  8. %matplotlib inline
复制代码
  1. print('Python version ' + sys.version)
  2. print('Pandas version ' + pd.__version__)
  3. print('Matplotlib version ' + matplotlib.__version__)
复制代码
Python version 2.7.12 (default, Aug  1 2016, 14:04:56) [GCC 4.8.4]Pandas version 0.18.1Matplotlib version 1.5.1
1、创建数据假设数据集由 1000 个 1880 年出的生婴儿名字及人数构成,其中会存在大量重复项,也就是将会多次看到同一个婴儿名字出现。可以设想每个名字的多条项目,只是全国不同医院记录每个婴儿名字的数量,所以如果有两家医院记录婴儿的名字为"Bob",则这个数据集对于"BoB"会有两个值。下面就开始创建婴儿名字的随机数据集。
  1. # 初始化婴儿名字集合
  2. names = ['Bob','Jessica','Mary','John','Mel']
复制代码
使用下面 5 个婴儿名字来制造 1000 个婴儿名字的随机列表:生成0-4的随机数我们将会使用方法 seed, randint, len, range, and zip.方法使用说明:seed(500) - 创建种子randint(low=0,high=len(names)) - 生成0到“names”列表的长度的随机整数names[n] - 选择索引为 n 的 namefor i in range(n) - 循环直到 i 等于 n, 换言之1,2,3....n.random_names = 从 names 列表选择随机名字,并且这样做 n 次.
  1. random.seed(500)
  2. random_names = [names[random.randint(low=0,high=len(names))] for i in range(1000)]

  3. # 输出前10条记录
  4. random_names[:10]
复制代码
['Mary', 'Jessica', 'Jessica', 'Bob', 'Jessica', 'Jessica', 'Jessica', 'Mary', 'Mary', 'Mary']
生成0到1000的随机数
  1. # 1880年每个出生婴儿名字数量
  2. births = [random.randint(low=0,high=1000) for i in range(1000)]
  3. births[:10]
复制代码
[968, 155, 77, 578, 973, 124, 155, 403, 199, 191]
使用zip方法合并 namesbirths 数据集
  1. BabyDataSet = list(zip(random_names,births))
  2. BabyDataSet[:10]
复制代码
[('Mary', 968), ('Jessica', 155), ('Jessica', 77), ('Bob', 578), ('Jessica', 973), ('Jessica', 124), ('Jessica', 155), ('Mary', 403), ('Mary', 199), ('Mary', 191)]
基本完成了数据集的构建,接着使用pandas库来导出这个数据集到一个 csv 文件。 df 是一个DataFrame 对象,在格式上类似 sql 表格、excel 表格。
让我们看下df中的内容。
  1. df = pd.DataFrame(data = BabyDataSet, columns=['Names', 'Births'])
  2. df[:10]
复制代码

以上内容节选自 数析学院,原文内容较多,先搬运到这,后续有时间再补充,有需要的同学可以先直接到 数析学院 最新课程查看原文



二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:数据集 随机数 Matplotlib Dataframe Jessica

沙发
casey_c 发表于 2017-8-8 11:54:12

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-2 07:50