在数据框中保持所有单元格高于给定值

2024-04-26 20:29:37 发布

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

我想丢弃所有包含低于给定值的值的单元格。所以不仅是行或列,而且是所有单元格。你知道吗

下面的代码,其中每个单元格中的所有值应至少为3。不起作用。你知道吗

df[(df >= 3).any(axis=1)]

示例

import pandas as pd
my_dict = {'A':[1,5,6,2],'B':[9,9,1,2],'C':[1,1,3,5]}
df = pd.DataFrame(my_dict)
df
    A   B   C
0   1   9   1
1   5   9   1
2   6   1   3
3   2   2   5

我只想保留至少3个细胞。你知道吗


Tags: 代码import示例dataframepandasdfmyas
2条回答

如果希望“每个单元格中的所有值至少应为3”

df [df < 3] = 3
df

    A   B   C
0   3   9   3
1   5   9   3
2   6   3   3
3   3   3   5

如果你想“只保留至少3个单元格”

df = df [df >= 3]
df

    A   B   C
0   NaN 9.0 NaN
1   5.0 9.0 NaN
2   6.0 NaN 3.0
3   3.0 3.0 5.0

您可以检查值是否为>;=3,然后删除所有具有NaN值的行。你知道吗

df[df >= 3 ].dropna()

演示:

import pandas as pd
my_dict = {'A':[1,5,6,3],'B':[9,9,1,3],'C':[1,1,3,5]}
df = pd.DataFrame(my_dict)
df

    A   B   C
0   1   9   1
1   5   9   1
2   6   1   3
3   3   3   5

df = df[df >= 3 ].dropna().reset_index(drop=True)
df

    A   B   C
0   3.0 3.0 5.0

相关问题 更多 >