weixin_47225461 2022-04-08 03:39 采纳率: 100%
浏览 318
已结题

怎样在Python csv文件中每24行提取一次数据并保存到一个单独的csv文件中?

算法目的

有一个csv文件,是以天数为单位,24h的空气质量数据。我想带着每天24h的数据以天为单位打乱整个csv,一共有1825天。
Python新上路,真诚求思路!
目前想到的办法是每隔24行提取一次数据并单独保存到一个文件,这样就是一共提取出来1825个csv,然后把这些csv再随机(不知道是否能办到)组合起来生成一个新的csv数据表,但是不咋会怎么循环提取每24行的数据,以及后续怎么随机组合
或者有uu能给出新的思路?

这是原始csv截图

img

求友友们指点!
  • 写回答

4条回答 默认 最新

  • 关注

    不需要每隔24行数据单独保存到一个文件,
    只需要用列表切片每隔24行切成为一个列表,把切片出来的列表作为一个元素添加到一个li2列表中.
    用random.shuffle(li2)随机打乱li2,再合并写到一个新的csv数据表即可

    你题目的解答代码如下:

    import random
    import csv
    
    with open("data.csv","r",newline="", encoding='utf-8') as fileObj:
        li = list(csv.reader(fileObj))
    n = 24
    li2 = []
    for i in range(0,len(li),n):
        li2.append(li[i:i+n])
    random.shuffle(li2)
    # print(*li2,sep='\n')
    with open("data2.csv","w",newline="", encoding='utf-8') as fileObj:
        wr = csv.writer(fileObj)
        for v in li2:
            wr.writerows(v)
    

    如有帮助,请点击我的回答下方的【采纳该答案】按钮帮忙采纳下,谢谢!

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 4月16日
  • 已采纳回答 4月8日
  • 创建了问题 4月8日

悬赏问题

  • ¥170 如图所示配置eNSP
  • ¥20 docker里部署springboot项目,访问不到扬声器
  • ¥15 netty整合springboot之后自动重连失效
  • ¥15 悬赏!微信开发者工具报错,求帮改
  • ¥20 wireshark抓不到vlan
  • ¥20 关于#stm32#的问题:需要指导自动酸碱滴定仪的原理图程序代码及仿真
  • ¥20 设计一款异域新娘的视频相亲软件需要哪些技术支持
  • ¥15 stata安慰剂检验作图但是真实值不出现在图上
  • ¥15 c程序不知道为什么得不到结果
  • ¥15 键盘指令混乱情况下的启动盘系统重装