You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

无法将随机生成整数列表保存至OneDrive的CSV文件问题求助

问题排查与修复方案

核心错误点

  • 未定义变量引用:你生成的正态分布数组变量是list_of_90_integers,但后续写入CSV时用的是未定义的group1,执行到这里会直接抛出NameError,代码中断后文件根本没机会生成。
  • 路径拼接错误:直接用path + 'group1CSV'会导致路径缺失分隔符,变成C:\Users\Home\OneDrive\Documents\Data Science\Synthetic Data Filesgroup1CSV,系统无法识别该路径。
  • 文件名不规范:缺少.csv后缀,不利于文件识别与后续处理。
  • 冗余代码:第一段创建group1CSV的代码属于无效重复操作,且同样存在变量错误。

修复后的完整代码

import numpy as np
import csv
import os  # 用于安全拼接路径

# Group 1:生成符合要求的90个正态分布整数
np.random.seed(42)
mean = 140
sd = 10
size = 90
# 统一变量名,避免混乱
group1 = np.random.normal(mean, sd, size=size).astype(int)
print(group1)  # 先打印数据,确认生成正确

# 定义目标路径
path = r'C:\Users\Home\OneDrive\Documents\Data Science\Synthetic Data Files'
# 安全拼接路径与文件名(自动处理分隔符)
full_file_path = os.path.join(path, 'group1.csv')

# 写入CSV文件
with open(full_file_path, 'w', newline='') as file:
    writer = csv.writer(file)
    # writerow会把整个列表写成一行;若要每个数值单独占一行,改用下面的代码
    # writer.writerows([[num] for num in group1])
    writer.writerow(group1)

额外说明

  • 如果需要每个数值单独占一行(更规范的单列CSV格式),把writer.writerow(group1)替换为:
    writer.writerows([[num] for num in group1])
    
  • 若目标文件夹不存在,可添加以下代码自动创建:
    os.makedirs(path, exist_ok=True)
    

内容的提问来源于stack exchange,提问作者YNWA10

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.02 20:02:49