Допустим, у нас есть столбец данных, который выглядит следующим образом:
import pandas as pd
import numpy as np
x = np.linspace(1, 25, num=25)
df=pd.DataFrame(np.sin(x)* np.random.randint(10,50),columns=['Curve'])
df2=pd.DataFrame(np.linspace(4,5,num=5))
df = df['Curve'].append(df2)
df.index=(range(len(df)))
Теперь давайте предположим, что мы хотели бы найти пять чисел, которые мы добавили к исходному кадру данных, найдя последовательность из пяти чисел, ВСЕ из которых имеют инкрементную разницу между ними, которая составляет <1. Как я мог сделать это? Предпочтительно таким образом, чтобы он работал на всех столбцах в рамках одного кадра данных одновременно. </p>
Я знаю, что в этом случае я просто прикрепил их к концу, но это потому, что я все еще нахожусь в процессе обучения, как манипулировать кадрами данных, и я не уверен, как легко вставить 5 новых значений в «середина» колонки (не стесняйтесь включать, как это сделать, было бы очень признательно). Это просто иллюстративный пример, но я хотел бы изучить концепцию, чтобы применить его к более сложным наборам данных.
Я думал об использовании «если» в сочетании с модулем сдвига индекса и логическим индексированием, но прежде чем я попробую это, мне интересно узнать, существует ли более элегантный и простой способ сделать это.