微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何遍历我的目录以附加具有 NaN 值的文件?

如何解决如何遍历我的目录以附加具有 NaN 值的文件?

我试图附加文件,如果列中的值为 NaN,则应将其附加为 0.0。我试过了 -

import pandas
import numpy as np
from pathlib import Path

inp_dir = Path(r'C:/Users/bc/Desktop/Folder') 

files_with_empty_cells = []

for file in inp_dir.glob('*.csv'):

    df=pd.read_csv(file,sep=',',quotechar='|')
    df['confidence']=df['confidence'].replace(np.nan,0.0)

这确实使特定单元格变为 0.0。但仅适用于一个 csv 文件。我希望它在该特定列中有 nan 值的地方附加所有 csv。

我的 df 看起来像-

enter image description here

所以你可以看到成绩单最后一行的置信度是 NaN。有多个文件存在此问题,我只希望我的脚本遍历我目录中的所有文件,并在置信列下的每个 csv 中附加空白(NaN)单元格为 0.0。

解决方法

您可能需要在执行 df 函数后对 replace 做一些事情。

例如

for file in inp_dir.glob('*.csv'):
    df = pd.read_csv(file,sep=',',quotechar='|')
    df['confidence'] = df['confidence'].replace(np.nan,0.0)
    df.to_csv(file,index=False)  # overwrites the existing file
,

让我们试试

inp_dir = Path(r'C:/Users/bc/Desktop/Folder') 

files_with_empty_cells = []

for file in inp_dir.glob('*.csv'):

    pd.read_csv(file,quotechar='|').replace({'confidence ':{np.nan: 0.0}}).to_csv(file)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。