【发布时间】:2018-09-04 05:02:47
【问题描述】:
如果有比我在下面所做的更好的组合两个数据帧的方法,我正在徘徊。
import pandas as pd
#create ramdom data sets
N = 50
df = pd.DataFrame({'date': pd.date_range('2000-1-1', periods=N, freq='H'),
'value': np.random.random(N)})
index = pd.DatetimeIndex(df['date'])
peak_time = df.iloc[index.indexer_between_time('7:00','9:00')]
lunch_time = df.iloc[index.indexer_between_time('12:00','14:00')]
comb_data = pd.concat([peak_time, lunch_time], ignore_index=True)
在使用 between_time 和逻辑运算符时,有没有办法组合两个范围?
我必须用它在 df 中创建一个名为“isPeak”的新列,其中 1 在 7:00 ~ 9:00 和 12:00 ~ 14:00 之间写入,否则写入 0。
【问题讨论】:
标签: python pandas datetime dataframe python-datetime