当前位置:   article > 正文

【HIVE】系统数据分析实战 汽车销售数据随机生成_hive销售系统

hive销售系统

一、生成测试数据

# 利用Python随机生成一份汽车销售数据,共100行,包括销售时间、销售地点、车辆类型、车辆型号、制造商、排量、功率、发动机型号、
# 燃料种类、车辆长宽高、轴距、驱动方式、轮胎规格、轮胎数量、载客数量、所有权、购买人等相关信息。并将生成的数据写入Excel。

import random
import pandas as pd

def generate_car_sales_data():
    # 销售时间
    sale_time = random.choice(['2023-12-01', '2023-12-02', '2023-12-03', '2023-12-04', '2023-12-05'])

    # 销售地点
    sale_location = random.choice(['beijing', 'shanghai', 'guangzhou', 'shenzhen', 'hangzhou'])

    # 车辆类型
    vehicle_type = random.choice(['CAR', 'SUV', 'MPV', 'Pickup'])

    # 车辆型号
    vehicle_model = random.choice(['Model 3', 'Model Y', 'Model S', 'Model X'])

    # 制造商
    manufacturer = random.choice(['tesla', 'BYD', 'BC', 'BMW', 'AODI'])

    # 排量
    displacement = random.choice(['1.5L', '2.0L', '2.5L', '3.0L', '3.5L'])

    # 功率
    power = random.choice(['100kW', '150kW', '200kW', '250kW', '300kW'])

    # 发动机型号
    engine_model = random.choice(['L4', 'V6', 'V8', 'W12'])

    # 燃料种类
    fuel_type = random.choice(['gasoline', 'diesel', 'GAS', 'electric'])

    # 车辆长宽高
    length, width, height = [random.randint(4000, 5000) for _ in range(3)]

    # 轴距
    wheelbase = random.randint(2500, 3000)

    # 驱动方式
    drive_type = random.choice(['Front-wheel', 'Rear-wheel', 'Four-wheel'])

    # 轮胎规格
    tire_specification = random.choice(['205/55R16', '215/60R17', '225/65R18', '235/70R19', '245/75R20'])

    # 轮胎数量
    tire_number = random.choice([4, 5])

    # 载客数量
    passenger_capacity = random.choice([4, 5, 6, 7])

    # 所有权
    ownership = random.choice(['personal', 'company', 'lease'])

    # 购买人
    purchaser = random.choice(['zhangsan', 'lisi', 'wangwu', 'zhaoliu'])

    # 返回生成的数据
    return {
        '销售时间': sale_time,
        '销售地点': sale_location,
        '车辆类型': vehicle_type,
        '车辆型号': vehicle_model,
        '制造商': manufacturer,
        '排量': displacement,
        '功率': power,
        '发动机型号': engine_model,
        '燃料种类': fuel_type,
        '车辆长宽高': [length, width, height],
        '轴距': wheelbase,
        '驱动方式': drive_type,
        '轮胎规格': tire_specification,
        '轮胎数量': tire_number,
        '载客数量': passenger_capacity,
        '所有权': ownership,
        '购买人': purchaser
    }

# 生成汽车销售数据
car_sales_data = [generate_car_sales_data() for _ in range(1000)]

# 创建一个 DataFrame 对象
df = pd.DataFrame(car_sales_data)

# 将 DataFrame 对象保存为 Excel 文件
df.to_csv('car_sales_data.csv', index=False)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
  • 75
  • 76
  • 77
  • 78
  • 79
  • 80
  • 81
  • 82
  • 83
  • 84
  • 85
  • 86
  • 87

二、创建HIVE数据库

1.创建数据库

CREATE EXTERNAL TABLE car_sales_data (
    -- 销售时间
    sale_time string comment '销售时间',
    -- 销售地点
    sale_location string comment '销售地点',
    -- 车辆类型
    vehicle_type string comment '车辆类型',
    -- 车辆型号
    vehicle_model string comment '车辆型号',
    -- 制造商
    manufacturer string comment '制造商',
    -- 排量
    displacement string comment '排量',
    -- 功率
    power string comment '功率',
    -- 发动机型号
    engine_model string comment '发动机型号',
    -- 燃料种类
    fuel_type string comment '燃料种类',
    -- 车辆长宽高
    vehicle_length string comment '车辆长度',
    vehicle_width string comment '车辆宽度',
    vehicle_height string comment '车辆高度',
    -- 轴距
    wheelbase string comment '轴距',
    -- 驱动方式
    drive_type string comment '驱动方式',
    -- 轮胎规格
    tire_specification string comment '轮胎规格',
    -- 轮胎数量
    tire_number string comment '轮胎数量',
    -- 载客数量
    passenger_capacity string comment '载客数量',
    -- 所有权
    ownership string comment '所有权',
    -- 购买人
    purchaser string comment '购买人'
)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ','
LOCATION '/car_sales';
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41

2.装载数据

load data local inpath '/资源路径/car_sales_data.csv' overwrite into table stutest.car_sales_data;
  • 1

3.查看数据

select * from car_sales_data limit 10;
  • 1

在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/你好赵伟/article/detail/746688
推荐阅读
相关标签
  

闽ICP备14008679号