假设我拥有以下多索引DataFrame。
import pandas as pd
row_axis = pd.MultiIndex(levels=[[],[]], codes=[[],[]], names=['Data', 'Period'])
column_axis = [['Index','Index', 'Data'],['First','Last','Min']]
MD = pd.DataFrame(index=row_axis, columns=column_axis)
稍后,当填充一行时,我可以具有这样的值。
MD.loc[('hi','5m'),:]=[5,10,'hello']
检查dtype,它告诉我:
In [17]:MD.dtypes
Out[17]:
Index First object
Last object
Data Min object
dtype: object
如何转换第一列(“索引”,“第一”)中的类型?
正在尝试:
MD = MD.astype({'(Index, First)' : int)
给予:
KeyError: 'Only a column name can be used for the key in a dtype mappings argument.'
感谢您的任何帮助,谢谢!
根据您的情况
MD = MD.astype({('Index', 'First') : int})
MD.dtypes
Out[53]:
Index First int32
Last int64
Data Min object
dtype: object