我正在努力理解Python中的map,filter和reduce的概念。我正在使用Python v3.6在Spyder IDE中工作。我有一个数据框:
Cap OC_y GMWB PE Acc
0.01 0.0065 0.560840708 0.646683673 0.515243902
0.0105 0.0068 0.586725664 0.676530612 0.53902439
0.011 0.0071 0.612610619 0.706377551 0.562804878
0.0115 0.0073 0.629867257 0.72627551 0.578658537
0.012 0.0076 0.655752212 0.756122449 0.602439024
0.0125 0.0079 0.681637168 0.785969388 0.626219512
0.013 0.0082 0.707522124 0.815816327 0.65
0.0135 0.0085 0.73340708 0.845663265 0.673780488
0.014 0.0087 0.750663717 0.865561224 0.689634146
0.0145 0.009 0.776548673 0.895408163 0.713414634
0.015 0.0093 0.802433628 0.925255102 0.737195122
我要选择以.005为增量的上限记录。请看下面:
Cap OC_y GMWB PE Acc
0.01 0.0065 0.560840708 0.646683673 0.515243902
0.015 0.0093 0.802433628 0.925255102 0.737195122
在这种情况下,地图功能不能正常工作吗?
map(lambda Cap: Cap + 0.05, data)
任何其他选择都很好。理想情况下,我需要它以某种方式工作,以便我可以基于某个值逐步选择记录。
答案 0 :(得分:1)
假设这些数字是0.005的倍数,则可以除以然后使用<WebView
source= {{ uri:"file:///data/user/0/com.ema_poc/files/PlaxVideoDemo/Clip 4_1/story_html5.html"} }
style={styles.webview}
javaScriptEnabled={true}
domStorageEnabled={true}
startInLoadingState={false}
scalesPageToFit={true}
/>
进行选择。
np.isclose
如果不是这种情况,那么我建议减去差值直到出现差值,然后重复以上操作:
v = df.Cap / 0.005
out = df[np.isclose(v, v.astype(int))]
v = (df.Cap - (df.Cap % 0.005).iat[0]) / 0.005
out = df[np.isclose(v, v.astype(int))]