Panda DataFrame не получает обновления - PullRequest
0 голосов
/ 06 мая 2019

Я пытаюсь обновить свой набор данных случайным образом следующим образом

originaldata = pd.read_csv('dataset.csv')
for i in range(10):
    timeslot = random.randint(1, 10) 
    percentage = random.randint(1, 101) / 100 + 1
    originaldata.iloc[i][timeslot] *= percentage

Но, что интересно, он работает, но набор данных никогда не обновляется.Может ли кто-нибудь указать, что я здесь делаю неправильно?

1 Ответ

1 голос
/ 06 мая 2019

Какая версия ваших панд? Я пробовал pandas 0.23.4 со следующим кодом:

In [1]: import pandas as pd
In [2]: import numpy as np
In [3]: df = pd.DataFrame(np.random.randint(10, size=(5, 3)))

поэтому входной фрейм данных:

In [4]: df
Out[4]:
   0  1  2
0  5  6  3
1  6  0  9
2  6  3  5
3  7  0  0
4  4  1  9

и после *= работы:

In [5]: df.iloc[0][1]*=2
In [6]: df
Out[6]:
   0   1  2
0  5  12  3
1  6   0  9
2  6   3  5
3  7   0  0
4  4   1  9

и мы видим, что элемент df[0, 1] преобразуется из 6 в 12.

и ответ @ Wen-Ben могут работать, когда имена столбцов timeslot совпадают с номерами столбцов: originaldata.iloc[i,timeslot] *= percentage

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...