python 景区游客量统计

某旅游公司为了优化公司资源配置,决定对半年来公司的业务数据进行梳理,找到游客青睐的旅游点,同时对游客较少的旅游点进行改进升级。

任务分析

分别计算"九寨沟","张家界","香港","东部华侨城","上海迪士尼"的游客总量

任务实施

1.定义求和函数

python 复制代码
import csv
def getTotalTourist(place):
    # place:一维数组,存放某个景区的每日游客人数
    total = 0 #保存游客总人数,初始值是0
    for num in place:
        total += num
    return total
    
    with open("tourist_data.csv","r",encoding="gbk") as file:
    all_data = csv.reader(file) #整体数据
    for item in all_data:
        print(item)
    file.seek(0) # 把文件指针重新指向文件开头

2.计算景区的游客总量

计算九寨沟的游客总量

python 复制代码
    # 1.从整体数据中筛选出九寨沟游客人数
    jzg_data = []
    for item in all_data:
        jzg_data.append(item[1])
    print(jzg_data)
    # 2.剔除第一个数据
    jzg_data = jzg_data[1:]
    print(jzg_data)
    jzg_data = list(map(int,jzg_data))
    print(jzg_data)
    # 3.计算九寨沟游客总人数
    jzg_total = getTotalTourist(jzg_data)
    print("九寨沟的游客总人数为:",jzg_total)

计算其他景区的游客总量

python 复制代码
# 张家界的游客总量
data_file = open("tourist_data.csv","r")
all_data = csv.reader(data_file)
zjj_data = [row[2]for row in all_data]
zjj_data_str = zjj_data[1:]
zjj_data = list(map(int,zjj_data_str))
zjj_total = getTotalTourist(zjj_data)
print("张家界的游客总人数为:",zjj_total)
data_file.close()

# 香港的游客总量
data_file = open("tourist_data.csv","r")
all_data = csv.reader(data_file)
hk_data = [row[3]for row in all_data]
hk_data_str = hk_data[1:]
hk_data = list(map(int,hk_data_str))
hk_total = getTotalTourist(hk_data)
print("香港的游客总人数为:",hk_total)

# 东部华侨城的游客总量
data_file = open("tourist_data.csv","r")
dbhqc_data = csv.reader(data_file)
dbhqc_data = [row[4]for row in all_data]
dbhqc_data_str = dbhqc_data[1:]
dbhqc_data = list(map(int,dbhqc_data_str))
dbhqc_total = getTotalTourist(dbhqc_data)
print("东部华侨城的游客总人数为:",dbhqc_total)

# 上海迪士尼的游客总量
data_file = open("tourist_data.csv","r")
all_data = csv.reader(data_file)
shdisney_data = [row[5]for row in all_data]
shdisney_data_str = shdisney_data[1:]
shdisney_data = list(map(int,shdisney_data_str))
shdisney_total = getTotalTourist(shdisney_data)
print("上海迪士尼的游客总人数为:",shdisney_total)

3.计算每个景点的游客总人数

python 复制代码
#1. 读取数据
(jzg_data,zjj_data,hk_data,dbhqc_data,disney_data) = np.loadtxt(
    "tourist_data.csv",
    encoding="gbk",
    skiprows=1, # 跳过第一行
    dtype=np.int64, #设置数据类型为整数
    usecols=(1,2,3,4,5), # 指定读取列
    delimiter=",", # 设置分隔符
    unpack=True #转置
)
print("九寨沟的游客总人数:",jzg_data.sum)
print("张家界的游客总人数:",zjj_data.sum)
print("香港的游客总人数:",hk_data.sum)
print("东部华侨城的游客总人数:",dbhqc_data.sum)
print("上海迪士尼的游客总人数:",disney_data.sum)

4.计算该日期每个景点的游客总人数

python 复制代码
import pandas as pd
# 1.读取数据
data = pd.read_csv(
    "tourist_data.csv",
    index_col="日期", #设置日期为索引列
    header=0, #将一行设置为标题行
    encoding="gbk" #设备文件编码
)
print(data)
print(type(data))

print("九寨沟的游客总人数:",data['九寨沟'].sum())
print("张家界的游客总人数:",data['张家界'].sum())
print("香港的游客总人数:",data['香港'].sum())
print("东部华侨城的游客总人数:",data['东部华侨城'].sum())
print("上海迪士尼的游客总人数:",data['上海迪士尼'].sum())

print("Windows\0007")

代码整合

python 复制代码
import csv
# 定义求和函数
def getTotalTourist(place):
    # place:一维数组,存放某个景区的每日游客人数
    total = 0 #保存游客总人数,初始值是0
    for num in place:
        total += num
    return total

with open("tourist_data.csv","r",encoding="gbk") as file:
    all_data = csv.reader(file) #整体数据
    for item in all_data:
        print(item)
    file.seek(0) # 把文件指针重新指向文件开头
    # 1. 统计九寨沟游客人数
    # 从整体数据中筛选出九寨沟游客人数
    jzg_data = []
    for item in all_data:
        jzg_data.append(item[1])
    print(jzg_data)
    # 剔除第一个数据
    jzg_data = jzg_data[1:]
    print(jzg_data)
    jzg_data = list(map(int,jzg_data))
    print(jzg_data)
    # 计算九寨沟游客总人数
    jzg_total = getTotalTourist(jzg_data)
    print("九寨沟的游客总人数为:",jzg_total)

# 张家界的游客总量
data_file = open("tourist_data.csv","r")
all_data = csv.reader(data_file)
zjj_data = [row[2]for row in all_data]
zjj_data_str = zjj_data[1:]
zjj_data = list(map(int,zjj_data_str))
zjj_total = getTotalTourist(zjj_data)
print("张家界的游客总人数为:",zjj_total)
data_file.close()

# 香港的游客总量
data_file = open("tourist_data.csv","r")
all_data = csv.reader(data_file)
hk_data = [row[3]for row in all_data]
hk_data_str = hk_data[1:]
hk_data = list(map(int,hk_data_str))
hk_total = getTotalTourist(hk_data)
print("香港的游客总人数为:",hk_total)

# 东部华侨城的游客总量
data_file = open("tourist_data.csv","r")
dbhqc_data = csv.reader(data_file)
dbhqc_data = [row[4]for row in all_data]
dbhqc_data_str = dbhqc_data[1:]
dbhqc_data = list(map(int,dbhqc_data_str))
dbhqc_total = getTotalTourist(dbhqc_data)
print("东部华侨城的游客总人数为:",dbhqc_total)

# 上海迪士尼的游客总量
data_file = open("tourist_data.csv","r")
all_data = csv.reader(data_file)
shdisney_data = [row[5]for row in all_data]
shdisney_data_str = shdisney_data[1:]
shdisney_data = list(map(int,shdisney_data_str))
shdisney_total = getTotalTourist(shdisney_data)
print("上海迪士尼的游客总人数为:",shdisney_total)

#1. 读取数据
(jzg_data,zjj_data,hk_data,dbhqc_data,disney_data) = np.loadtxt(
    "tourist_data.csv",
    encoding="gbk",
    skiprows=1, # 跳过第一行
    dtype=np.int64, #设置数据类型为整数
    usecols=(1,2,3,4,5), # 指定读取列
    delimiter=",", # 设置分隔符
    unpack=True #转置
)
print("九寨沟的每日游客:\n",jzg_data)
print("张家界的每日游客:\n",zjj_data)
print("香港的每日游客:\n",hk_data)
print("东部华侨城的每日游客:\n",dbhqc_data)
print("迪士尼的每日游客:\n",disney_data)

# 2. 求每个景点的游客总人数
print("九寨沟的游客总人数:",jzg_data.sum)
print("张家界的游客总人数:",zjj_data.sum)
print("香港的游客总人数:",hk_data.sum)
print("东部华侨城的游客总人数:",dbhqc_data.sum)
print("上海迪士尼的游客总人数:",disney_data.sum)

import pandas as pd
# 1.读取数据
data = pd.read_csv(
    "tourist_data.csv",
    index_col="日期", #设置日期为索引列
    header=0, #将一行设置为标题行
    encoding="gbk" #设备文件编码
)
print(data)
print(type(data))
# 2.求每个景点的游客总人数
print("九寨沟的游客总人数:",data['九寨沟'].sum())
print("张家界的游客总人数:",data['张家界'].sum())
print("香港的游客总人数:",data['香港'].sum())
print("东部华侨城的游客总人数:",data['东部华侨城'].sum())
print("上海迪士尼的游客总人数:",data['上海迪士尼'].sum())

print("Windows\0007")
相关推荐
wertyuytrewm16 分钟前
用Python实现自动化的Web测试(Selenium)
jvm·数据库·python
曲辕RPA29 分钟前
深度解析GEO技术及背后的机器人曲辕RPA
python·ai·自动化·rpa
2301_7644413335 分钟前
使用python构建的STAR实验ΛΛ̄自旋关联完整仿真
开发语言·python·算法
xifangge202541 分钟前
Python 爬虫实战:爬取豆瓣电影 Top250 数据并进行可视化分析
开发语言·爬虫·python
Flittly1 小时前
【从零手写 ClaudeCode:learn-claude-code 项目实战笔记】(10)Team Protocols (团队协议)
笔记·python·ai·ai编程
阿_旭1 小时前
基于YOLO26深度学习的蓝莓成熟度检测与分割系统【python源码+Pyqt5界面+数据集+训练代码】图像分割、人工智能
人工智能·python·深度学习·毕业设计·蓝莓成熟度检测
lxmyzzs1 小时前
使用Python分析COCO数据集标注信息:一个简单脚本实现统计与可视化
python·深度学习·目标检测·计算机视觉
wertyuytrewm1 小时前
自动化与脚本
jvm·数据库·python
qq_417695051 小时前
Python深度学习入门:TensorFlow 2.0/Keras实战
jvm·数据库·python
problc1 小时前
在 OpenClaw 里一句话记账:消费说出来,账单自动进乖猫记账 App
开发语言·python