列中的计数值Igonorig字母数字值

2024-05-29 11:25:02 发布

您现在位置:Python中文网/ 问答频道 /正文

第一篇文章,我试图找出excel文件中的值总数。所以在导入文件之后,我需要运行一个条件,这个条件是计算除0之外的所有值,也就是它找到0的地方,使其为空。你知道吗

> df6 = df5.append(df5.ne(0).sum().rename('Final Value'))

我尝试了上面的方法,但是没有正常工作,它也在计算列名,我只需要计算浮点值。

演示数据帧:

              0        1       2       3
ID_REF      1007_s  1053_a  117_at  121_at
GSM95473    0.08277 0.00874 0.00363 0.01877
GSM95474    0.09503 0.00592 0.00352 0
GSM95475    0.08486 0.00678 0.00386 0.01973
GSM95476    0.08105 0.00913 0.00306 0.01801
GSM95477    0.00000 0.00812 0.00428 0
GSM95478    0.07615 0.00777 0.00438 0.01799
GSM95479    0       0.00508 1       0
GSM95480    0.08499 0.00442 0.00298 0.01897
GSM95481    0.08893 0.00734 0.00204 0
                0        1       2       3
ID_REF        1007_s  1053_a  117_at  121_at

它们是列名索引值,计算时需要忽略这些值。你知道吗

输出计数后应如下:

Final 8 9 9 5


Tags: 文件refid地方文章条件excelat
2条回答

我能够解决这个问题,所以这里是:

df5 = df4.append(pd.DataFrame(dict(((df4[1:] != 1) & (df4[1:] != 0)).sum()), index=['Final']))

df5.columns = df4.columns

went = df5.to_csv("output3.csv")

我所做的是我改变了起始索引,所以我没有计算第一行的字母数字,然后我只是比较它。你知道吗

谢谢你的回复。你知道吗

如果您只是需要计数,但是更改了数据帧中的值,那么可以使用applymap方法对数据帧中的每个单元格应用一个函数。首先创建一个函数来检查浮点值:

def floatcheck(value):
    if isinstance(value, float):
        return 1
    else:
        return 0

然后将其应用于数据帧:

df6 = df5.applymap(floatcheck)

这将创建一个dataframe,如果值是float,则为1,否则为0。然后可以应用sum方法:

df7 = df6.append(df6.sum().rename("Final Value"))

相关问题 更多 >

    热门问题