Это должен быть довольно простой вопрос, но я хочу программно вставить имя pandas DataFrame
в имена столбцов DataFrame
.программно добавить pandas Имя DataFrame в столбцы
Скажем, у меня есть следующие DataFrame
:
name_of_df = pandas.DataFrame({1: ['a','b','c','d'], 2: [1,2,3,4]})
print name_of_df
1 2
0 a 1
1 b 2
2 c 3
3 d 4
Я хочу иметь следующее:
name_of_df = %%some_function%%(name_of_df)
print name_of_df
name_of_df1 name_of_df2
0 a 1
1 b 2
2 c 3
3 d 4
..where, как вы можете видеть, название DataFrame является программно вводится в имена столбцов. Я знаю, что pandas DataFrames
не имеют атрибута __name__
, поэтому я рисую пробел о том, как это сделать.
Обратите внимание, что я хочу сделать это программно, поэтому изменение имен столбцов с жестко закодированной строкой 'name_of_df'
не будет работать.
Очень связанный с этим вопрос: [? Преобразовать имя переменной в строку] (http://stackoverflow.com/questions/1534504/convert-variable-name-to-string). – Manhattan
Это на самом деле удивительно сложно. Можно ли отслеживать имена ваших df в самом начале, когда они созданы? Или, помещая их в список, который вы вызываете по ссылочному номеру: 'myList [2]' или somesuch? –
К сожалению, я не смогу заранее знать имя объекта DataFrame, так как эта функция будет иметь несколько вариантов использования. – Bryan