Reb*_*375 3 python list dataframe pandas
我有一个pandas数据帧:
index data1 data2
1 30 20
2 20 10
3 40 90
Run Code Online (Sandbox Code Playgroud)
我想生成一个描述数组,每行一个,指示数据是否重要.
我定义重要值超过25,所以我想要以下数组:
['data1 was significant', '', 'data1 was significant\ndata2was significant']
Run Code Online (Sandbox Code Playgroud)
我知道我可以遍历每一行并检查每一列并构建一个数组,但我想知道是否有一种优雅的方法来使用pandas来做到这一点.
使用dot技巧:
df = pd.DataFrame({
'data1': [30, 20, 40],
'data2': [20, 10, 90]
}, index=[1,2,3])
df.gt(25).dot(df.columns + ' was significant\n').str.strip().tolist()
# ['data1 was significant', '', 'data1 was significant\ndata2 was significant']
Run Code Online (Sandbox Code Playgroud)