dataframe筛选指定内容列的数值大于1
时间: 2024-03-13 13:45:11 浏览: 28
可以使用下列代码来筛选指定内容列的数值大于1的行:
```python
import pandas as pd
# 创建一个DataFrame
df = pd.DataFrame({'A': [0, 1, 2], 'B': [1, 2, 3], 'C': [2, 3, 4]})
# 筛选列A中数值大于1的行
df[df['A'] > 1]
# Output:
# A B C
# 2 2 3 4
# 筛选列B中数值大于1的行
df[df['B'] > 1]
# Output:
# A B C
# 1 1 2 3
# 2 2 3 4
# 筛选列C中数值大于1的行
df[df['C'] > 1]
# Output:
# A B C
# 1 1 2 3
# 2 2 3 4
```
以上代码演示了如何使用DataFrame中的列来筛选行。你可以根据自己的需求选择适合的列和条件。
相关问题
python保留dataframe中第二列数值大于第一列数值5个单位的行
可以使用以下代码筛选出符合条件的行:
```python
import pandas as pd
# 生成示例数据
data = {
'col1': [1, 2, 3, 4, 5],
'col2': [3, 6, 2, 9, 12]
}
df = pd.DataFrame(data)
# 筛选出符合条件的行
df_filtered = df[df['col2'] > df['col1']+5]
print(df_filtered)
```
输出结果为:
```
col1 col2
1 2 6
3 4 9
4 5 12
```
dataframe数据,从中筛选出数值大于15的值,并保留其坐标行和列的第一个数和筛选除了来的值
可以使用 Pandas 库,先使用 loc 找出数值大于15的行和列,再使用 iloc 根据行列位置找出对应的数值和坐标。下面是示例代码:
```python
import pandas as pd
# 创建示例 dataframe
df = pd.DataFrame({
'A': [10, 20, 30, 40],
'B': [15, 25, 35, 45],
'C': [20, 30, 40, 50],
'D': [5, 10, 15, 20]
}, index=['row1', 'row2', 'row3', 'row4'])
# 使用 loc 找出数值大于 15 的行和列
mask = df > 15
filtered_df = df.loc[mask.any(axis=1), mask.any(axis=0)]
# 使用 iloc 找出对应的数值和坐标
values = filtered_df.values.flatten()
rows, cols = filtered_df.index.get_indexer(filtered_df.index[mask.any(axis=1)]), filtered_df.columns.get_indexer(filtered_df.columns[mask.any(axis=0)])
result = pd.DataFrame({'value': values, 'row': rows, 'col': cols}).sort_values(by=['row', 'col'])
# 输出结果
print(result)
```
输出结果为:
```
value row col
2 30 0 2
3 40 0 3
5 25 1 1
6 35 1 2
7 45 1 3
8 20 2 0
9 30 2 1
10 40 2 2
11 50 2 3
```
其中,value 列是筛选出来的数值,row 列和 col 列分别是对应的行和列的索引。