Если вы погрузитесь в код Pandas и перейдете к нему в window.py, вы получите:
def _get_corr(a, b):
a = a.rolling(window=window, min_periods=self.min_periods,
freq=self.freq, center=self.center)
b = b.rolling(window=window, min_periods=self.min_periods,
freq=self.freq, center=self.center)
return a.cov(b, **kwargs) / (a.std(**kwargs) * b.std(**kwargs))
Если вы распечатаете значения для window и min_periods в вашем примере
df.rolling(window='1d').corr()
имеет окно = 86400000000000 и min_periods = 1, тогда как
df.rolling(window=1).corr()
имеет окно = 1 и min_periods = нет.
Ваш индекс dtype = 'datetime64 [ns]'
Итак, похоже, что «1d» переводится в 24 * 60 * 60 * 1000000000 или количество наносекунд в день.Так что это то же самое, что и «1d».
df.rolling(window=86400000000000, min_periods=1).corr()