Извлечение строк на основе значений строк / столбцов

#python #string

#python #строка

Вопрос:

Допустим, у меня есть фрейм данных, который выглядит следующим образом:

  Response    1       2       3        4       SelectedAnswerString 

   3        dog     cat    mouse   rabbit    

   2        cap    light   watch    bag ` 
  

Возможно ли для меня извлечь числовое значение (например, 3) из столбца с названием «ответ» и выбрать столбец на основе этого числового значения (т. Е. Столбец с названием «3»), чтобы извлечь строку в этой строке / столбце (т. Е. Мышь для первой строки) и создатьновый столбец с этой строкой? Спасибо!

Ответ №1:

Вы можете использовать Pandas dataframe.append(your value, ignore_index=True) , поэтому аргумент ignore_index говорит не использовать индексные метки. И если вы хотите извлечь значение, вы можете использовать .loc and .iloc

Ответ №2:

Используя df в качестве фрейма данных, вы можете начать с идеи использования значения в Response столбце для определения местоположения позиции столбца и захватить эту строку в этой позиции столбца для вставки в новый столбец:

 import pandas as pd

df[SelectedAnswerString] = df[df.iloc[:, df.Response]]
  

Это предполагает числовое значение для Response столбца. Однако вам нужно будет настроить тот факт, что Python начинает индексировать 0