猿问

如何自定义一个函数作用在dataframe的每一个值上?

def hour_exceed(df):

i=df.valuesif i is np.nan:    return np.nanelif i>200:    return 1elif i<200:    return 0

dataframe

df15.head()
Out[21]:

time 1036A 1037A 1040A 1041A 1051A 1053A 1054A \

0 2015-01-01 00:00:00 NaN NaN NaN NaN NaN NaN NaN 
1 2015-01-01 01:00:00 NaN NaN NaN NaN NaN NaN NaN 
2 2015-01-01 02:00:00 NaN NaN NaN NaN NaN NaN NaN 
3 2015-01-01 03:00:00 NaN NaN NaN NaN NaN NaN NaN 
4 2015-01-01 04:00:00 NaN NaN NaN NaN NaN NaN NaN

1057A 1062A ... 2593A 2600A 2643A 2654A 2655A 2657A 2667A \
0 NaN NaN ... NaN 32.0 NaN 9.0 9.0 3.0 8.0 
1 NaN NaN ... NaN 33.0 NaN 9.0 8.0 3.0 6.0 
2 NaN NaN ... NaN 23.0 NaN 8.0 8.0 2.0 5.0 
3 NaN NaN ... NaN NaN NaN NaN NaN NaN NaN 
4 NaN NaN ... NaN 52.0 NaN 7.0 4.0 1.0 6.0

2688A 2689A 2708A 
0 9.0 3.0 NaN 
1 8.0 2.0 NaN 
2 11.0 4.0 NaN 
3 NaN NaN NaN 
4 6.0 5.0 NaN 
如何定义一个自定义函数作用在dataframe的每一个值上


桃花长相依
浏览 1655回答 2
2回答

12345678_0001

直接用df[df<=200]=0;df[df>200]=1就好了

慕田峪4524236

跟怎么定义函数没关系,调用df.applymap()。
随时随地看视频慕课网APP

相关分类

Python
我要回答