获取在新列之前的列中的元素

优点_2

我正在尝试从“数据”列中收集的数据(在我在“分”列中收集的数据之前)并创建新列。看到图片

这是数据(通过pd.read_csv导入):

time,data
12/15/18 01:10 AM,130352.146180556
12/16/18 01:45 AM,130355.219097222
12/17/18 01:47 AM,130358.223263889
12/18/18 02:15 AM,130361.281701389
12/19/18 03:15 AM,130364.406597222
12/20/18 03:25 AM,130352.427430556
12/21/18 03:27 AM,130355.431597222
12/22/18 05:18 AM,130358.663541667
12/23/18 06:44 AM,130361.842430556
12/24/18 07:19 AM,130364.915243056
12/25/18 07:33 AM,130352.944409722
12/26/18 07:50 AM,130355.979826389
12/27/18 09:13 AM,130359.153472222
12/28/18 11:53 AM,130362.4871875
12/29/18 01:23 PM,130365.673263889
12/30/18 02:17 PM,130353.785763889
12/31/18 02:23 PM,130356.798263889
01/01/19 04:41 PM,130360.085763889
01/02/19 05:01 PM,130363.128125

和我的代码:

import pandas as pd
import numpy as np
from scipy import signal
from scipy.signal import argrelextrema
import datetime
diff=pd.DataFrame()


df=pd.read_csv('saw_data2.csv')
df['time']=pd.to_datetime(df['time'])

print(df.head())
n=2 # number of points to be checked before and after
# Find local peaks
df['min'] = df.iloc[argrelextrema(df.data.values, np.less_equal, order=n)[0]]['data']

如果绘制数据,您会发现它类似于锯齿。我在'min'中获得的'data'中的元素是我想放入新列df ['new_col']中的元素。

我尝试过很多事情,

df['new_col']=df.index.get_loc(df['min'].df['data'])

和,

df['new_col']=df['min'].shift() #obviously wrong
我想要一片T骨牛排

IIUC,您可以shift在选择具有min值的行之前执行以下操作

df['new_col'] = df.shift().loc[df['min'].notna(), 'data']
print (df)
                 time           data            min        new_col
0   12/15/18 01:10 AM  130352.146181  130352.146181            NaN
1   12/16/18 01:45 AM  130355.219097            NaN            NaN
2   12/17/18 01:47 AM  130358.223264            NaN            NaN
3   12/18/18 02:15 AM  130361.281701            NaN            NaN
4   12/19/18 03:15 AM  130364.406597            NaN            NaN
5   12/20/18 03:25 AM  130352.427431  130352.427431  130364.406597
6   12/21/18 03:27 AM  130355.431597            NaN            NaN
7   12/22/18 05:18 AM  130358.663542            NaN            NaN
8   12/23/18 06:44 AM  130361.842431            NaN            NaN
9   12/24/18 07:19 AM  130364.915243            NaN            NaN
10  12/25/18 07:33 AM  130352.944410  130352.944410  130364.915243
11  12/26/18 07:50 AM  130355.979826            NaN            NaN
12  12/27/18 09:13 AM  130359.153472            NaN            NaN
13  12/28/18 11:53 AM  130362.487187            NaN            NaN
14  12/29/18 01:23 PM  130365.673264            NaN            NaN
15  12/30/18 02:17 PM  130353.785764  130353.785764  130365.673264
16  12/31/18 02:23 PM  130356.798264            NaN            NaN
17  01/01/19 04:41 PM  130360.085764            NaN            NaN
18  01/02/19 05:01 PM  130363.128125            NaN            NaN

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章