javy1688 2022-01-25 20:24 采纳率: 100%
浏览 57
已结题

用python读取cvs指定几个位置的前后组数据到all.cvs 列排成行

用python读取999999.cvs指定几个位置的30组数据(前后15个)*到all.cvs 列排成行
如图所示

img

img

位置
107
344
602
836
1073
1328


 
import os
import pandas as pd
 
# 保存的文件名称
save_name = 'all.csv'
 
# 保存的路径
root = 'D:\\001'
 
# 读取文件
file_names ='99999.csv'
 
tableList = []

# 变量(107,344,602,836,1073,1328)


# 输出:  107前后151.023283255    1.032023634    0.994547295    0.981628209    1.001872138    1.001509843    0.945685967    0.992554643    0.979529058    1.031946774    0.984573303    1.022913117    1.007236438    1.010754408    0.992961036    1.022808533    1.028271792    1.013280278    0.993445024    1.001793408    1.013355951    0.992350575    1.013502291    0.938064635    1.002590523    0.975740614    1.016660591    1.042399324    1.004365493    1.008990571
# 输出:  344前后15个  后续跟上面一样



finalData.to_csv(root + '\\' + save_name ,encoding="ANSI",index=False)
  • 写回答

1条回答 默认 最新

  • 广大菜鸟 2022-01-25 21:20
    关注
    import pandas as pd
    
    # 保存的文件名称
    save_name = 'all.csv'
    root = r'C:\Users\Lenovo\Desktop'
    # 保存的路径
    file_names = r'C:\Users\Lenovo\Desktop\99999.csv'
    
    df = pd.read_csv(file_names, header=None)
    finalData = pd.DataFrame(columns=[i + 1 for i in range(30)])
    
    tableList = [107, 344]
    for index in tableList:
        if index - 15 > df.shape[0] or index + 14 <= 0:  # 防止越界
            print('Error:index %d overflow' % index)
            continue
        startIndex = index - 15
        endIndex = index + 14
        if startIndex <= 0:
            startIndex = 1
    
        if endIndex > df.shape[0]:
            endIndex = df.shape[0]
    
        finalData.loc['%d的30组数据' % index] = df[startIndex - 1: endIndex].values.T[0]
        print(finalData)
    
    finalData.to_csv(root + '\\' + save_name, encoding="ANSI", header=None)
    
    
    

    img

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录

报告相同问题?

问题事件

  • 系统已结题 2月2日
  • 已采纳回答 1月25日
  • 修改了问题 1月25日
  • 赞助了问题酬金10元 1月25日
  • 展开全部

悬赏问题

  • ¥20 java在应用程序里获取不到扬声器设备
  • ¥15 echarts动画效果的问题,请帮我添加一个动画。不要机器人回答。
  • ¥60 许可证msc licensing软件报错显示已有相同版本软件,但是下一步显示无法读取日志目录。
  • ¥15 Attention is all you need 的代码运行
  • ¥15 一个服务器已经有一个系统了如果用usb再装一个系统,原来的系统会被覆盖掉吗
  • ¥15 使用esm_msa1_t12_100M_UR50S蛋白质语言模型进行零样本预测时,终端显示出了sequence handled的进度条,但是并不出结果就自动终止回到命令提示行了是怎么回事:
  • ¥15 前置放大电路与功率放大电路相连放大倍数出现问题
  • ¥80 部署运行web自动化项目
  • ¥15 腾讯云如何建立同一个项目中物模型之间的联系
  • ¥30 VMware 云桌面水印如何添加