【发布时间】:2016-08-18 04:11:41
【问题描述】:
我使用Quandl python 模块中的get() 函数从Quandl 下载了一个时间序列,并调用了UNES_HARD_COAL_BR,它的形状为(24,19),但我只想使用第1 到第3 列和第 18 列。我编写了这个脚本来使用名为ll 的列表完成这项工作,并在我的DataFrame 对象中应用drop() 方法,该列表包含我不使用的列的名称。 这里的挑战是在不创建列表的情况下做到这一点。
import Quandl
import pandas as pd
UNES_HARD_COAL_BR = Quandl.get("UENG/CL_BRA", authtoken="xX6ntNSFuvq7eCZvDdvL")
UNES_HARD_COAL_BR.columns = UNES_HARD_COAL_BR.columns.str.replace(' ', '_')
ll =['Hard_coal_-_transformation_(Metric_tons,_thousand)', 'Hard_coal_-_transformation_in_coke_ovens_(Metric_tons,_thousand)','Hard_coal_-_transformation_in_electricity,_CHP_and_heat_plants_(Metric_tons,_thousand)','Hard_coal_-_transformation_in_electricity_plants_-_main_activity_producers_(Metric_tons,_thousand)','Hard_coal_-_final_energy_consumption_(Metric_tons,_thousand)','Hard_coal_-_consumption_by_manufacturing,_construction_and_non-fuel_mining_industry_(Metric_tons,_thousand)','Hard_coal_-_consumption_by_other_manuf.,_const._and_non-fuel_ind._(Metric_tons,_thousand)','Hard_coal_-_final_consumption_(Metric_tons,_thousand)','Hard_coal_-_stock_changes_(Metric_tons,_thousand)','Hard_coal_-_transformation_in_electricity_plants_-_autoproducers_(Metric_tons,_thousand)','Hard_coal_-_consumption_by_transport_(Metric_tons,_thousand)','Hard_coal_-_consumption_by_rail_(Metric_tons,_thousand)','Hrad_coal_-_consumption_by_iron_and_steel_industry_(Metric_tons,_thousand)', 'Hard_coal_-_losses_(Metric_tons,_thousand)', 'Hard_coal_-_total_energy_supply_(Metric_tons,_thousand)']
UNES_HARD_COAL_BR.drop(ll, axis=1, inplace=True)
相关
How to select only specific columns from a DataFrame with MultiIndex columns?
pandas: Extracting specific selected columns from a DataFrame to new DataFrame
【问题讨论】:
-
你可以使用
df = df.iloc[:, [1,2,3,18]]