Я пытаюсь добавить столбец в кадре данных Pandas, который в среднем равен значению исходного столбца, но может отклонять в каждой строке некоторые десятичные точки.Идеально отклоняется от нормального дистрибутива, но я не уверен, как это сделать.
Я пробовал простой код, подобный приведенному ниже:
import pandas as pd
import numpy as np
df = pd.DataFrame(np.random.randint(1,99,size=(100000, 1)), columns=["GOD_prob"])
df["GOD_prob"] = df["GOD_prob"] / 100
df["GOD_odd"] = 1 / df["GOD_prob"]
df["market_prob"] = ((df["GOD_prob"] * 100 ) + np.random.randint(-10,10, len(df))) / 100
df["market_price"] = 1 / df["market_prob"]
Проблема, с которой я столкнулсяИмея, для значений в df ["GOD_prob"] ниже 0.10 я могу получить отрицательные значения для df ["market_prob"], и я не хочу этого, так как эти столбцы обозначают вероятности.
После этого я хотел бы создать еще один столбец, который отличается от df ["GOD_prob"] в среднем на 5%, но я не совсем уверен, как это сделать.
Спасибо за помощь!