簡體   English   中英

如何在 dataframe 中將 -0.0 值替換為 0.0 值?

[英]How do I replace -0.0 values with 0.0 values in a dataframe?

大約一周前,我在這里問了這個問題,我使用rolling().sum().round()方法創建新列並添加到數據框中。 但是,我在數據框中有一些值為-0.0但我想用0.0替換它。

這是一個例子:

print(assomption_rain_df.head(25))

          date      time  rain_gauge_value        
0   2020-08-05  00:00:00               5.3                  
1   2020-08-05  01:00:00               2.7                  
2   2020-08-05  02:00:00               2.2                  
3   2020-08-05  03:00:00               3.0                  
4   2020-08-05  04:00:00               1.5     
5   2020-08-05  05:00:00               0.0     
6   2020-08-05  06:00:00               0.0     
7   2020-08-05  07:00:00               0.0     
8   2020-08-05  08:00:00               0.1     
9   2020-08-05  09:00:00               0.1     
10  2020-08-05  10:00:00               0.1     
11  2020-08-05  11:00:00               0.4     
12  2020-08-05  12:00:00               0.5     
13  2020-08-05  13:00:00               0.2     
14  2020-08-05  14:00:00               0.3     
15  2020-08-05  15:00:00               0.4     
16  2020-08-05  16:00:00               0.2     
17  2020-08-05  17:00:00               0.0     
18  2020-08-05  18:00:00               0.0    
19  2020-08-05  19:00:00               0.0     
20  2020-08-05  20:00:00               0.0     
21  2020-08-05  21:00:00               0.0     
22  2020-08-05  22:00:00               0.0     
23  2020-08-05  23:00:00               0.0    
24  2020-08-06  00:00:00               0.0  

assomption_rain_df['rain_gauge_value_6hr']=assomption_rain_df['rain_gauge_value'].rolling(6).sum().round(1)

print(assomption_rain_df.head(25))

          date      time  rain_gauge_value rain_gauge_value_6hr       
0   2020-08-05  00:00:00               5.3                  NaN
1   2020-08-05  01:00:00               2.7                  NaN
2   2020-08-05  02:00:00               2.2                  NaN
3   2020-08-05  03:00:00               3.0                  NaN
4   2020-08-05  04:00:00               1.5                  NaN
5   2020-08-05  05:00:00               0.0                 14.7
6   2020-08-05  06:00:00               0.0                  9.4
7   2020-08-05  07:00:00               0.0                  6.7
8   2020-08-05  08:00:00               0.1                  4.6
9   2020-08-05  09:00:00               0.1                  1.7
10  2020-08-05  10:00:00               0.1                  0.3
11  2020-08-05  11:00:00               0.4                  0.7
12  2020-08-05  12:00:00               0.5                  1.2
13  2020-08-05  13:00:00               0.2                  1.4
14  2020-08-05  14:00:00               0.3                  1.6   
15  2020-08-05  15:00:00               0.4                  1.9
16  2020-08-05  16:00:00               0.2                  2.0
17  2020-08-05  17:00:00               0.0                  1.6
18  2020-08-05  18:00:00               0.0                  1.1
19  2020-08-05  19:00:00               0.0                  0.9
20  2020-08-05  20:00:00               0.0                  0.6
21  2020-08-05  21:00:00               0.0                  0.2
22  2020-08-05  22:00:00               0.0                 -0.0
23  2020-08-05  23:00:00               0.0                 -0.0
24  2020-08-06  00:00:00               0.0                 -0.0

如何在數據框中將-0.0值替換為0.0值?

更新:感謝您的幫助! .round(1) .abs() ) 解決了這個問題。

只需將 -0.0 的值替換為 0:

assomption_rain_df['rain_gauge_value_6hr'][assomption_rain_df['rain_gauge_value_6hr'] == -0.0] = 0

嘗試DataFrame.replace()

assomption_rain_df['rain_gauge_value_6hr'] = assomption_rain_df['rain_gauge_value_6hr'].replace(-0, 0)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM