gpt4 book ai didi

python - 计算 DataFrame 中每一列的第一个非缺失值

转载 作者:太空狗 更新时间:2023-10-30 00:32:07 26 4
gpt4 key购买 nike

我有一个如下所示的 DataFrame:

            1125400  5430095  1095751
2013-05-22 105.24 NaN 6507.58
2013-05-23 104.63 NaN 6393.86
2013-05-26 104.62 NaN 6521.54
2013-05-27 104.62 NaN 6609.31
2013-05-28 104.54 87.79 6640.24
2013-05-29 103.91 86.88 6577.39
2013-05-30 103.43 87.66 6516.55
2013-06-02 103.56 87.55 6559.43

我想计算每列中的第一个非 NaN 值。

作为Locate first and last non NaN values in a Pandas DataFrame指出,可以使用 first_valid_index。不幸的是,它返回第一行,其中至少有一个元素不是 NaN,并且对每列不起作用。

最佳答案

你应该使用 apply有效地将函数应用于每一列(默认)或每一行的函数:

>>> first_valid_indices = df.apply(lambda series: series.first_valid_index())
>>> first_valid_indices
1125400 2013-05-22 00:00:00
5430095 2013-05-28 00:00:00
1095751 2013-05-22 00:00:00

first_valid_indices然后将是包含每一列的 first_valid_index 的系列。

您还可以将 lambda 函数定义为外部的普通函数:

def first_valid_index(series):
return series.first_valid_index()

然后像这样调用apply:

df.apply(first_valid_index)

关于python - 计算 DataFrame 中每一列的第一个非缺失值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23309514/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com