AI数据分析:集中度分析和离散度分析

部落人有文化 2024-06-19 14:15:13

在deepseek中输入提示词:

你是一个Python编程专家,要完成一个Python脚本编写的任务,具体步骤如下:

读取Excel表格:"F:\AI自媒体内容\AI行业数据分析\toolify月榜\toolify2023年-2024年月排行榜汇总数据.xlsx"

计算第2列第1行-20行数据组的:

最大值

最小值

均值

中位数

极差

方差

标准差

20%分位数

25%分位数

75%分位数

80%分位数

将计算结果写入第2列第21行-31行;

然后按照上面的计算步骤一直计算到第15列第21行-31行;

计算第2列第1行(设为数据起点)到第15列第1行(设为数据终点)数据组的简单年均增长率,写入第16列第1行,然后计算第2行,第3行数据,一直计算到第20行;

计算第2列第1行(设为数据起点)到第15列第1行(设为数据终点)数据组的复合年均增长率,然后计算第2行,第3行数据,一直计算到第20行;

注意:每一步都输出信息到屏幕

一步步的思考,但是代码要整合在一起

计算复合年均增长率的时候,年数n是固定值:13

源代码:

import pandas as pd

import numpy as np

# 读取Excel文件

file_path = "F:\\AI自媒体内容\\AI行业数据分析\\toolify月榜\\toolify2023年-2024年月排行榜汇总数据.xlsx"

df = pd.read_excel(file_path)

# 计算第2列到第15列的统计量并写入新的单元格

for i in range(1, 15):

data = df.iloc[0:20, i] # 第i列的数据

stats = {

'最大值': np.max(data),

'最小值': np.min(data),

'均值': np.mean(data),

'中位数': np.median(data),

'极差': np.ptp(data),

'方差': np.var(data),

'标准差': np.std(data),

'20%分位数': np.percentile(data, 20),

'25%分位数': np.percentile(data, 25),

'75%分位数': np.percentile(data, 75),

'80%分位数': np.percentile(data, 80)

}

# 将计算结果写入新的单元格

for j, (stat_name, stat_value) in enumerate(stats.items(), start=20):

df.iloc[j, i] = stat_value

print(f"第{i+1}列的{stat_name}已经写入第{j+1}行。")

# 计算简单年均增长率并写入第16列

for i in range(1, 21):

start_value = df.iloc[i-1, 1] # 起点数据

end_value = df.iloc[i-1, 14] # 终点数据

growth_rate = ((end_value - start_value) / start_value) * 100

df.iloc[i-1, 15] = growth_rate

print(f"第{i}行的简单年均增长率已经写入第16列。")

# 计算复合年均增长率(假设年数为13年)并写入第17列

n = 13 # 固定年数

for i in range(1, 21):

start_value = df.iloc[i-1, 1] # 起点数据

end_value = df.iloc[i-1, 14] # 终点数据

compound_growth_rate = ((end_value / start_value) ** (1/n) - 1) * 100

df.iloc[i-1, 16] = compound_growth_rate

print(f"第{i}行的复合年均增长率(假设年数为13年)已经写入第17列。")

# 将更新后的DataFrame写入Excel文件

with pd.ExcelWriter(file_path, engine='openpyxl', mode='a', if_sheet_exists='overlay') as writer:

df.to_excel(writer, sheet_name='Sheet1', startrow=1, startcol=0, index=False)

print("所有计算结果已经写入Excel文件。")

0 阅读:0

部落人有文化

简介:感谢大家的关注