Как я могу заставить эту команду работать с сохраненной переменной? - PullRequest
0 голосов
/ 13 января 2019

Я хочу выполнить команду в моей программе со значением, хранящимся в переменной.

на данный момент работает так:

вам нужно записать значение в команду, поэтому, если я хочу фильтровать по региону «Америка», мне нужно сделать следующее:

wine.loc[wine['Region'] == 'Americas']

но я хочу иметь строку кода где-то еще в коде, например:

abc = 'Americas'

и что строка loc выполняется тем, что хранится в переменной abc

Ответы [ 2 ]

0 голосов
/ 13 января 2019

Если вы хотите создать отдельный фрейм данных для всех регионов, создайте цикл и сохраните каждый фрейм данных в словаре фреймов данных, как показано ниже:

dfs = ['df' + str(x) for x in list(wine['Region'].unique())]
dicdf = dict()
i = 0 
while i < len(dfs):
    dicdf[dfs[i]] = wine[(wine['Region']==list(wine['Region'].unique())[i])]
    i = i + 1
print(dicdf)

Это напечатает словарь данных. Вы можете напечатать, какой фрейм данных вы хотите видеть, например, данные для 'Americas': print(dicdf['dfAmericas'])

Дайте мне знать, если вам нужно что-нибудь еще.

0 голосов
/ 13 января 2019

проверить, не является ли строка пустой, а затем отфильтровать

if abc:
    wine = wine.loc[wine['Region'] == abc]

если вы хотите отфильтровать несколько значений, вы можете использовать

abc = ['Americas','Europe']
wine  = wine.loc[wine['Region'].isin(abc)]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...