彭彭和丁满_ 2021-04-21 15:47 采纳率: 100%
浏览 413
已采纳

python for循环写入csv表格添加数据的时候会被最后的数据覆盖

在爬虫或者数据分析过程中,使用for循环添加的数据被最后一次循环覆盖参数

如下尝试其他博主的方式也没有改变。

for的循环写入不被覆盖需要用‘a’写入方法,我原来用的‘w’所以被覆盖了

filename = 'allserver.txt' 
with open(filename,'a',encoding='utf-8') as f: 
    f.writelines(dates + '*'*50 + '\n')

我需要的操作是提取每一合约 进行数据分析

for循环代码如下:

import pandas as pd
data=pd.read_csv(r"/Users/bingtangdunxueli期货交易记录.csv",encoding="gbk")
for i in data["合约"]:
    print(i)
    data_gender = data[['日期','品种','合约','合约乘数','买开手数','买开均价']]
    data_gender_re = data_gender[data_gender.notnull()]
    FF = data_gender_re.loc[(data_gender_re['合约'] == i)]
    filename = '/Users/bingtangdunxueli/quanbu.csv'
    with open(filename,'a',encoding='utf-8') as f:
       f.writelines(FF)

结果仍然是最后数据覆盖

 

 

  • 写回答

6条回答 默认 最新

  • 关注
    import pandas as pd
    data=pd.read_csv(r"/Users/bingtangdunxueli期货交易记录.csv",encoding="gbk")
    filename = '/Users/bingtangdunxueli/quanbu.csv'
    with open(filename,'w',encoding='utf-8') as f:
        f.write("日期,品种,合约,合约乘数,买开手数,买开均价\n")
        for i in data["合约"]:
            print(i)
            data_gender = data[['日期','品种','合约','合约乘数','买开手数','买开均价']]
            data_gender_re = data_gender[data_gender.notnull()]
            FF = data_gender_re.loc[(data_gender_re['合约'] == i)]
            for li in FF.values.tolist():
                s = ",".join(map(str,li))
                f.write(s+"\n")
    

    这样看看

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

报告相同问题?

悬赏问题

  • ¥30 Matlab打开默认名称带有/的光谱数据
  • ¥50 easyExcel模板 动态单元格合并列
  • ¥15 res.rows如何取值使用
  • ¥15 在odoo17开发环境中,怎么实现库存管理系统,或独立模块设计与AGV小车对接?开发方面应如何设计和开发?请详细解释MES或WMS在与AGV小车对接时需完成的设计和开发
  • ¥15 CSP算法实现EEG特征提取,哪一步错了?
  • ¥15 游戏盾如何溯源服务器真实ip?需要30个字。后面的字是凑数的
  • ¥15 vue3前端取消收藏的不会引用collectId
  • ¥15 delphi7 HMAC_SHA256方式加密
  • ¥15 关于#qt#的问题:我想实现qcustomplot完成坐标轴
  • ¥15 下列c语言代码为何输出了多余的空格