Категориальный отбор для списка в Python

Вы не можете повторно назначить self из метода и ожидать, что он изменит внешние ссылки на объект.

self - это просто аргумент, передаваемый вашей функции. Это имя указывает на экземпляр вызова метода. «Назначение self» эквивалентно:

def fn(a):
   a = 2
a = 1
fn(a)
# a is still equal to 1

Присвоение self изменяет то, на что указывает имя self (от одного экземпляра Table до нового экземпляра Table здесь ). Но все. Он просто меняет имя (в рамках вашего метода) и влияет не на базовый объект, а на другие его имена (ссылки).


Просто выполните поиск на месте с помощью list.sort:

def sort(self, in_col_name):
    super(Table, self).sort(key=lambda x: x[in_col_name])
0
задан Rachel Li 6 March 2019 в 02:20
поделиться

1 ответ

Довольно неясно, что ты пытаешься сделать. Почему бы вам не попробовать прочитать данные с помощью `df = pd.read_csv ('hw03_problem2.csv', names = ['number', 'color1', 'color2']), что должно облегчить работу с ними ,

Затем вы можете построить определенное подмножество с помощью

df[df.color1 == 'black'].number.plot.hist(ax=ax1)

, если у вас уже настроены оси. Предполагается, что это числа, из которых вы делаете гистограмму.

0
ответ дан P Maschhoff 6 March 2019 в 02:20
поделиться
Другие вопросы по тегам:

Похожие вопросы: