Mam dużą ramkę danych, którą chcę pobrać plasterki (zgodnie z wieloma kryteriami boolowskimi), a następnie zmodyfikuj wpisy w tych plasterkach, aby zmienić oryginalną ramkę danych - tj. Potrzebuję view
do oryginału. Problem polega na tym, że wymyślne indeksowanie zawsze zwraca wartość copy
. Myśli o metodzie .ix
, ale indeksowanie boolowskie za pomocą metody df.ix[]
również zwraca kopię.indeksowanie boolowskie, dzięki któremu można uzyskać widok na dużą ramkę danych pandy?
Zasadniczo, jeśli df
jest moją ramką danych, chciałbym widok do kolumny C tak, że C!=0, A==10, B<30,...
itp. Czy istnieje szybki sposób to zrobić w pandy?
doskonałe rozwiązanie dla większości zastosowań. :) –
Dzięki ... właśnie tego szukałem! – optional
Po uruchomieniu polecenia 'subdf ['A'] + = subdf ['B'] * subdf ['C']', zmienia wartości, ale otrzymuję następujące ostrzeżenie: 'Próbuję ustawić wartość na kopii wycinka z DataFrame. Spróbuj użyć .loc [row_indexer, col_indexer] = wartość zamiast niej Zobacz zastrzeżenia w dokumentacji: http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy # Używany wewnętrznie do debugowania piaskownicy pod zewnętrznym interpreterem'. Następnie próbowałem postępować zgodnie z zaleceniem zawartym w tym ostrzeżeniu 'subdf.loc [:, 'A'] + = subdf ['B'] * subdf ['C']' i otrzymałem ponownie to samo ostrzeżenie. Co jest poprawne? –