Python (строка): использование строки, сохраненной в ячейке фрейма данных, в качестве формулы pandas

#python #python-3.x #pandas #string #dataframe

#python #python-3.x #pandas #строка #фрейм данных

Вопрос:

У меня есть InputDF фрейм данных, показанный ниже. Он имеет только один столбец Col1 (0-й столбец), все значения которого являются строковыми:

введите описание изображения здесь

Я пытаюсь использовать значения в столбце 0 в качестве формулы в pandas (упомянуто ниже) У меня есть еще один пустой фрейм данных DF2 , в который я пытаюсь вставить следующие данные:

 DF2 = InputDF.loc[0,0] 
  

… это приводит к DF2["column1"] = 'p_input[Order No]'

Мне нужно, чтобы это было DF2["column1"] = p_input[Order No] так, чтобы я мог сохранять данные p_input , доступные в столбце «Order No» фрейма данных в столбце «columns1» фрейма данных «DF2»

[Примечание: p_input — это другой фрейм данных, из-за некоторых проблем эти предположения не могут быть изменены]

Комментарии:

1. Пожалуйста, лучше объясните, что вы пытаетесь сделать

Ответ №1:

eval ваш друг: DF2 = eval(p_input[Line Of Business])

Комментарии:

1. теперь, когда DF2 = eval(p_input[Направление деятельности] * 20%), это дает SyntaxError: неожиданный EOF при синтаксическом анализе для «%» в конце

2. Отладка — отличное упражнение, вы ставите себя в неловкое положение, прося о помощи, вместо того, чтобы сесть и разобраться в этом самостоятельно.