Я пытаюсь перебрать несколько строк столбца и умножить n-ю строку на n+1 строку после добавления столбцов.
Я попробовал приведенный ниже код, и он работает нормально.Есть ли другой простой способ одновременно выполнить вычитание и умножение?
import pandas as pd
df = pd.DataFrame({'C': ["Spark","PySpark","Python","pandas","Java"],
'F' : [2,4,3,5,4],
'D':[3,4,6,5,5]})
df1 = pd.DataFrame({'C': ["Spark","PySpark","Python","pandas","Java"],
'F': [1,2,1,2,1],
'D':[1,2,2,2,1]})
df = pd.merge(df, df1, on="C")
df['F_x-F_y'] = df['F_x'] - df['F_y']
df['D_x-D_y'] = df['D_x'] - df['D_y']
for index, row in df.iterrows():
df['F_mul'] = df['F_x-F_y'].mul(df['F_x-F_y'].shift())
df['D_mul'] = df['D_x-D_y'].mul(df['D_x-D_y'].shift())
df['F+D'] = df['F_mul'] + df['D_mul']
Вывод –
C F_x D_x F_y D_y F_x-F_y D_x-D_y F_mul D_mul F+D
0 Spark 2 3 1 1 1 2 NaN NaN NaN
1 PySpark 4 4 2 2 2 2 2.0 4.0 6.0
2 Python 3 6 1 2 2 4 4.0 8.0 12.0
3 pandas 5 5 2 2 3 3 6.0 12.0 18.0
4 Java 4 5 1 1 3 4 9.0 12.0 21.0
Подробнее здесь: https://stackoverflow.com/questions/793 ... -row-value
Panda перебирает строки и умножает значения n-й строки на значение следующей (n+1) строки. ⇐ Python
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Panda перебирает строки и умножает значения n-й строки на значение следующей (n+1) строки.
Anonymous » » в форуме Python - 0 Ответы
- 20 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Как реализовать список битовых наборов
, который принимает разную длину и перебирает список
Anonymous » » в форуме C++ - 0 Ответы
- 32 Просмотры
-
Последнее сообщение Anonymous
-