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日

悬赏问题

  • ¥15 求学软件的前人们指明方向🥺
  • ¥50 如何增强飞上天的树莓派的热点信号强度,以使得笔记本可以在地面实现远程桌面连接
  • ¥15 MCNP里如何定义多个源?
  • ¥20 双层网络上信息-疾病传播
  • ¥50 paddlepaddle pinn
  • ¥20 idea运行测试代码报错问题
  • ¥15 网络监控:网络故障告警通知
  • ¥15 django项目运行报编码错误
  • ¥15 STM32驱动继电器
  • ¥15 Windows server update services