我正在尝试使用以下代码从read_csv对象列表创建pandas DataFrames。在创建DataFrame时,我还想通过替换' _data'来重命名新创建的DataFrame。与' _df'
test_data = pd.read_csv('test/path'/.csv')
train_data = pd.read_csv('train/path'/.csv')
example_data = pd.read_csv('example/path'/.csv')
more_data = pd.read_csv('more/path'/.csv')
data_list = [test_data, train_data, example_data, more_data]
for i in data_list:
pd.DataFrame(i).rename(i.replace('_data', '_df'))
但是,由于收到此错误,上述操作无效:
TypeError: 'DataFrame' object is not callable
答案 0 :(得分:0)
您可以传递字典进行重命名,键是当前列名,值是您想要的新名称
pd.DataFrame(data_list).rename({columns={'test_data':'test_df', 'train_data':'train_df'})
或只是包含所需名称的列表:
df.columns = ['test_df','train_df']
答案 1 :(得分:0)
<?php
$filter = $em->getFilters()->enable("locale");
$filter->setParameter('locale', 'en');
// Disable it
$filter = $em->getFilters()->disable("locale");
接受整个DataFrame的callable。您不必逐个迭代列。熊猫为你提供。
rename
请注意此操作不会发生,因此需要将其分配给变量或赋予df.rename(columns = lambda x: x.replace('data','df'))
参数,尽管这不是最佳实践。
inplace