我有一个多索引的Pandas数据框,如下所示:
如何将三层索引合并为一个索引?也就是说,我想把(1987,1,2)变成pd.datetime(1987,1,2).我更喜欢使用df.index.map的矢量化方法.这里的代码可以创建数据框的顶部:
df = pd.DataFrame(
{'3 months': [1, 2, 3, 4, 5]},
index=[
[1987, 1987, 1987, 1987,1987],
[1,1,1,1,1],
[2,5,6,7,8]
]
)
Run Code Online (Sandbox Code Playgroud) 为什么允许使用这段代码,使用它是一种好习惯吗?我有很多 Java 经验,这使得在 Python 中初始化变量看起来非常不正式。
class MyClass(object):
def __init__(object):
pass #no mention of x here
def setX(self,x):
self.x = x #why is this allowed
def getX(self):
return self.x
Run Code Online (Sandbox Code Playgroud)