网站建设资讯详细

python筛选dataframe某一行数据大于某个值

发表日期:2023-07-01 15:11:19   作者来源:shuimu   浏览:2217       

思路1:

import pandas as pd

df = pd.DataFrame([[60, 20, 36, 78], [95, 35, 10, 6], [68, 63, 82, 30]], columns=['a', 'b', 'c', 'd'])



print(df)

print('数据框中大于50的数:')
for i in df.index:
    for j in df.columns:
        if df.loc[i, j] > 50:
            print(f'{i}行{j}列,{df.loc[i, j]}')




思路2:
dataframe包含5列,筛选其中某一列A数据大于100,再筛选另一列数据大于20%,A和B生成结果集组合成一个新的数据,PY如何写,给一个案例:

import pandas as pd

# 读取包含5列的DataFrame
df = pd.read_csv('your_file.csv')

# 筛选A列数据大于100,B列数据大于20%
filtered_df = df[(df['A'] > 100) & (df['B'] > df['B'].max() * 0.2)]

# 提取A和B列生成结果集,并合并为一个新的DataFrame
result_df = filtered_df[['A', 'B']]

 

解释一下代码:
第一行导入pandas库,第二行使用read_csv()函数读取包含5列的DataFrame;
第四行使用布尔索引(Boolean indexing)筛选出A列数据大于100,B列数据大于20%的数据,注意这里的&符号表示逻辑与(and);
第六行使用中括号[]选取出A和B列的数据,并将它们组合成一个新的DataFrame。
你需要将代码中的'your_file.csv'替换为你的文件路径。

python筛选dataframe某一行数据大于某个值