如何将“ Diff()”方法应用于多个列?

时间:2019-11-10 09:19:11

标签: python pandas

我正在尝试将diff()方法应用于多列,以使数据在时间序列上保持平稳。

  
    
      

x1 = frc_data ['004L004T10']。diff(期间= 8)       X1       日期       2013-10-01 NaN

    
  

2013-11-01 NaN

2013-12-01 NaN

2014-01-01 NaN

2014-02-01 NaN 因此diff适用于单列。

但是diff不适用于所有列:

对于frc_data.columns中的x:

const data = {

place1: { name: 'One'},
place2: { name: 'Two'},
place3: { name: 'Three'},
};


const countrydata = [];

for (let key in data) {
  countrydata.push({ [key]: data[key] });
}

console.log(countrydata);

没有错误,尽管数据保持不变

2 个答案:

答案 0 :(得分:0)

为了更改数据框,您需要将diff分配给新列,即

for x in frc_data.columns:
    frc_data[x] = frc_data[x].diff(periods=1)

答案 1 :(得分:0)

循环不是必需的,只需删除[x]即可消除所有列的差异:

frc_data = frc_data.diff(periods=1)