Есть ли общий эффективный способ присвоения значений подмножеству DataFrame в пандах? У меня есть сотни строк и столбцов, к которым я могу получить доступ напрямую, но мне не удалось выяснить, как редактировать их значения без повторения через каждую пару строк, col. Например:Редактирование pandas DataFrame с использованием индексов
In [1]: import pandas, numpy
In [2]: array = numpy.arange(30).reshape(3,10)
In [3]: df = pandas.DataFrame(array, index=list("ABC"))
In [4]: df
Out[4]:
0 1 2 3 4 5 6 7 8 9
A 0 1 2 3 4 5 6 7 8 9
B 10 11 12 13 14 15 16 17 18 19
C 20 21 22 23 24 25 26 27 28 29
In [5]: rows = ['A','C']
In [6]: columns = [1,4,7]
In [7]: df[columns].ix[rows]
Out[7]:
1 4 7
A 1 4 7
C 21 24 27
In [8]: df[columns].ix[rows] = 900
In [9]: df
Out[9]:
0 1 2 3 4 5 6 7 8 9
A 0 1 2 3 4 5 6 7 8 9
B 10 11 12 13 14 15 16 17 18 19
C 20 21 22 23 24 25 26 27 28 29
Я считаю, что здесь происходит то, что я получаю копию, а не зрения, это означает, что я не могу назначить оригинальной DataFrame. Это моя проблема? Каков наиболее эффективный способ редактировать эти строки x столбцов (желательно в темпе, поскольку DataFrame может занимать много памяти)?
Кроме того, что, если я хочу заменить эти значения правильно сформированным DataFrame?
Я получаю ошибку атрибута для df.loc. Я предполагаю, что это ново в пандах 0.11. Раньше был эквивалент, или именно поэтому мне нужно обновлять панды раз в два месяца? – Noah
Кроме того, он описывает где-то в документах, что это представление, а не копия? См. Http://pandas.pydata.org/pandas-docs/dev/indexing.html#indexing-view-versus-copy – Noah
Определенно, что документы требуют больше узнать о том, когда это представление или копия, я сказал, что я добавили бы некоторые документы в прошлом (просто нужно выработать все входы и выходы), сделает проблему github, чтобы получить мяч, катится ... –