python - конвертировать строку в имя переменной, которой я могу назначить список или pandas.DataFrame - PullRequest
0 голосов
/ 01 июня 2018

У меня есть список строк типа L = ["V01", "V02", "V03"], и я хочу преобразовать каждый элемент в L в переменную, которой я могу назначить pd.DataFrame.

df_list = [] for name in L: df_temp = df[df['name'] == name] df_list.append(df_temp) dd = dict(zip(L, df_list)) globals().update(dd)

В этот момент V01, V02 и V03 распознаются как переменные, а при вводе выходы являются соответствующими значениями pd.DataFrame.

Есть ли способ для меня ссылаться на новые переменные V01, V02 и V03 без их предварительной распечатки?

1 Ответ

0 голосов
/ 01 июня 2018

Не уверен, что я полностью понял ваш вопрос.Позвольте мне попытаться найти решение на основе моего понимания вопроса

У вас есть переменная, которой назначена строка

name = "V01"

Вы хотите назначить фрейм данных для строки

my_dict = {}
my_dict[name] = pd.DataFrame({"Name" : ["John","Simon"], "Age" : [21,30]})

Теперь вы хотите вызвать этот фрейм данных без явного вызова строки, но с переменной, которой он назначен

print(my_dict[name])

   Age  Name
0  21   John
1  30   Simon

Редактировать 1:

# Creating the data frame "df1" and the list of names "L"
df = pd.DataFrame({"name" : ["V01","V02","V03","V01","V02","V03"], "Age" : [21,30,21,23,45,32]})
L = ["V01", "V02", "V03"]
print(df)
    Age name
0   21  V01
1   30  V02
2   21  V03
3   23  V01
4   45  V02
5   32  V03

# Sub setting the data frame by names from "L" and storing it in a dictionary as a key-value pair
my_dict = {}
for name in L :
    my_dict[name] = df[df['name'] == name]

# Printing the data frame for "V01"
my_dict["V01"]
Output :
    Age name
0   21  V01
3   23  V01
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...