我想显示行,其中A-F列中的值满足一个条件,即只有单列值在(0,5>;之间,其余值大于5。将其视为我想了解的情况,其中只有一个元素离测量中心很近(例如,0-5m距离),其余点(列值)都在附近“进一步”。我添加了字符串列作为障碍
我在下面的代码中进行了尝试,但没有成功。此外,还有一个条件,即其余列的值应大于5
df[(df.columns[-6:]>0) & (df.columns[-6:]<=5)]
最小可复制示例:
import numpy as np
import pandas as pd
import string
rowsNumber = 15
digitColumnNumber = 6
letterColumnNumber = 3
df_numbers = pd.DataFrame(np.random.randint(0,25,size=(rowsNumber, digitColumnNumber)), columns=list('ABCDEF'))
df_letters = pd.DataFrame(np.arange(rowsNumber*letterColumnNumber).reshape(rowsNumber,letterColumnNumber)).applymap(lambda x: np.random.choice(list(string.ascii_letters)))
df = pd.concat([df_letters, df_numbers], axis=1)
这就是你要找的吗
您可以简单地对所需的列进行切片,并对其值小于或等于5的列进行计数(我假设这些值大于或等于零,但如果不是这样,则很容易添加第二个检查):
相关问题 更多 >
编程相关推荐