python - 无法使用 Pandas DataFrame 对象上的循环获得正确的 DataFrame 形状(行*列)

标签 python pandas dataframe data-analysis

您好,我是 Pandas DataFrame 的新手。我有 150 个用户数据文件。其中一份用户数据文件如下:

SL_NO  KP   KPT         KR  KRT         FA          FP
0      1    9.84278E+12 1   9.84286E+12 0.16862746  1
0      3    9.84309E+12 3   9.84317E+12 0.16862746  1
0      7    9.84353E+12 7   9.84358E+12 0.14117648  1
0      9    9.84383E+12 9   9.84394E+12 0.16470589  1
0      6    9.84413E+12 6   9.84422E+12 0.1764706   1
0      6    9.8443E+12  6   9.84438E+12 0.16470589  1
0      6    9.84448E+12 6   9.84456E+12 0.16862746  1
0      6    9.84479E+12 6   9.84489E+12 0.16470589  1
0      2    9.84511E+12 2   9.8452E+12  0.18431373  1
0      4    9.84544E+12 4   9.84553E+12 0.16470589  1
0      6    9.8459E+12  6   9.84598E+12 0.16862746  1
0      8    9.84617E+12 8   9.84625E+12 0.16470589  1
0      0    9.84649E+12 0   9.8466E+12  0.16078432  1
0      8    9.84713E+12 8   9.84722E+12 0.15686275  1
0      5    9.84733E+12 5   9.84741E+12 0.16078432  1
0      2    9.84755E+12 2   9.84762E+12 0.18431373  1
0      E    9.84936E+12 E   9.84943E+12 0.16470589  1
1      1    9.85852E+12 1   9.85859E+12 0.19607845  1
1      3    9.85877E+12 3   9.85886E+12 0.19607845  1
1      7    9.85919E+12 7   9.85925E+12 0.15294118  1
1      9    9.85961E+12 9   9.85969E+12 0.16862746  1
1      6    9.85986E+12 6   9.85994E+12 0.1764706   1
1      6    9.86002E+12 6   9.86012E+12 0.18431373  1
1      6    9.8602E+12  6   9.86029E+12 0.1764706   1
1      6    9.8605E+12  6   9.86059E+12 0.18039216  1
1      2    9.86083E+12 2   9.86091E+12 0.18431373  1
1      4    9.86116E+12 4   9.86123E+12 0.1764706   1
1      6    9.86167E+12 6   9.86177E+12 0.18431373  1
1      8    9.86192E+12 8   9.862E+12   0.18039216  1
1      0    9.86219E+12 0   9.86229E+12 0.15686275  1
1      8    9.86272E+12 8   9.86278E+12 0.16078432  1
1      5    9.86294E+12 5   9.86302E+12 0.1764706   1
1      2    9.86315E+12 2   9.86323E+12 0.17254902  1
1      E    9.86425E+12 E   9.86433E+12 0.14117648  1
2      1    9.86495E+12 1   9.86503E+12 0.1764706   1
2      3    9.86528E+12 3   9.86536E+12 0.19215688  1
2      7    9.86569E+12 7   9.86575E+12 0.1254902   1
2      9    9.86611E+12 9   9.8662E+12  0.16470589  1
2      6    9.86658E+12 6   9.86666E+12 0.16862746  1
2      6    9.86675E+12 6   9.86685E+12 0.17254902  1
2      6    9.86699E+12 6   9.86705E+12 0.1764706   1
2      6    9.86723E+12 6   9.86734E+12 0.17254902  1
2      2    9.8676E+12  2   9.86768E+12 0.18039216  1
2      4    9.86782E+12 4   9.86792E+12 0.16862746  1
2      6    9.8682E+12  6   9.86831E+12 0.16862746  1
2      8    9.86862E+12 8   9.86869E+12 0.18039216  1
2      0    9.86891E+12 0   9.869E+12   0.16470589  1
2      8    9.86933E+12 8   9.86941E+12 0.17254902  1
2      5    9.86953E+12 5   9.86961E+12 0.1764706   1
2      2    9.86974E+12 2   9.86982E+12 0.19215688  1
2      E    9.87035E+12 E   9.87044E+12 0.17254902  1
3      1    9.87104E+12 1   9.87111E+12 0.1764706   1
3      3    9.87136E+12 3   9.87146E+12 0.18823531  1
3      7    9.87177E+12 7   9.87185E+12 0.15294118  1
3      9    9.87226E+12 9   9.87235E+12 0.16470589  1
3      6    9.87276E+12 6   9.87284E+12 0.18431373  1
3      6    9.87298E+12 6   9.87306E+12 0.1764706   1
3      6    9.87323E+12 6   9.87332E+12 0.17254902  1
3      6    9.8735E+12  6   9.87361E+12 0.18039216  1
3      2    9.87384E+12 2   9.87392E+12 0.1764706   1
3      4    9.87416E+12 4   9.87424E+12 0.17254902  1
3      6    9.87492E+12 6   9.875E+12   0.16862746  1
3      8    9.87517E+12 8   9.87525E+12 0.16470589  1
3      0    9.87546E+12 0   9.87554E+12 0.15294118  1
3      8    9.87633E+12 8   9.87641E+12 0.16862746  1
3      5    9.87655E+12 5   9.87663E+12 0.1764706   1
3      2    9.87675E+12 2   9.87683E+12 0.18823531  1
3      E    9.87744E+12 E   9.87753E+12 0.17254902  1
4      1    9.8781E+12  1   9.87817E+12 0.17254902  1
4      3    9.87841E+12 3   9.87849E+12 0.1764706   1
4      7    9.87875E+12 7   9.87882E+12 0.15686275  1
4      9    9.8797E+12  9   9.87978E+12 0.16862746  1
4      6    9.8802E+12  6   9.88026E+12 0.17254902  1
4      6    9.88039E+12 6   9.88047E+12 0.18039216  1
4      6    9.88067E+12 6   9.88075E+12 0.1764706   1
4      6    9.88094E+12 6   9.88104E+12 0.17254902  1
4      2    9.88129E+12 2   9.8814E+12  0.1764706   1
4      4    9.88162E+12 4   9.8817E+12  0.15686275  1
4      6    9.88224E+12 6   9.8823E+12  0.16862746  1
4      8    9.88252E+12 8   9.88258E+12 0.17254902  1
4      0    9.88279E+12 0   9.88288E+12 0.15686275  1
4      8    9.88374E+12 8   9.88382E+12 0.16078432  1
4      5    9.88394E+12 5   9.88402E+12 0.17254902  1
4      2    9.88413E+12 2   9.88421E+12 0.18039216  1
4      E    9.88469E+12 E   9.88477E+12 0.16078432  1
5      1    9.88538E+12 1   9.88546E+12 0.18039216  1
5      3    9.88647E+12 3   9.88653E+12 0.18039216  1
5      7    9.88689E+12 7   9.88695E+12 0.15686275  1
5      9    9.88728E+12 9   9.88738E+12 0.16862746  1
5      6    9.88761E+12 6   9.88769E+12 0.16078432  1
5      6    9.88778E+12 6   9.88788E+12 0.17254902  1
5      6    9.88801E+12 6   9.8881E+12  0.1764706   1
5      6    9.88826E+12 6   9.88835E+12 0.18431373  1
5      2    9.88856E+12 2   9.88867E+12 0.1764706   1
5      4    9.88889E+12 4   9.88897E+12 0.16862746  1
5      6    9.8893E+12  6   9.88939E+12 0.18823531  1
5      8    9.8898E+12  8   9.88986E+12 0.16862746  1
5      0    9.89011E+12 0   9.89021E+12 0.16470589  1
5      8    9.8907E+12  8   9.89078E+12 0.16078432  1
5      5    9.89091E+12 5   9.891E+12   0.1764706   1
5      2    9.89113E+12 2   9.89119E+12 0.19215688  1
5      E    9.89155E+12 E   9.89163E+12 0.16470589  1
6      1    9.89229E+12 1   9.89236E+12 0.16078432  1
6      3    9.89264E+12 3   9.89271E+12 0.18431373  1
6      7    9.89311E+12 7   9.89316E+12 0.15686275  1
6      9    9.89369E+12 9   9.89377E+12 0.17254902  1
6      6    9.89412E+12 6   9.8942E+12  0.18431373  1
6      6    9.89431E+12 6   9.89439E+12 0.19215688  1
6      6    9.89453E+12 6   9.89461E+12 0.19607845  1
6      6    9.89477E+12 6   9.89485E+12 0.1764706   1
6      2    9.89505E+12 2   9.89515E+12 0.17254902  1
6      4    9.8954E+12  4   9.89546E+12 0.16470589  1
6      6    9.89576E+12 6   9.89584E+12 0.17254902  1
6      8    9.89604E+12 8   9.89612E+12 0.17254902  1
6      0    9.89633E+12 0   9.8964E+12  0.16470589  1
6      8    9.89709E+12 8   9.89717E+12 0.15294118  1
6      5    9.89731E+12 5   9.89739E+12 0.1764706   1
6      2    9.89753E+12 2   9.89759E+12 0.18039216  1
6      E    9.89804E+12 E   9.89809E+12 0.10196079  1
7      1    9.89882E+12 1   9.8989E+12  0.16078432  1
7      3    9.8992E+12  3   9.89928E+12 0.18039216  1
7      7    9.89965E+12 7   9.89973E+12 0.15294118  1
7      9    9.90026E+12 9   9.90035E+12 0.16470589  1
7      6    9.90063E+12 6   9.90071E+12 0.17254902  1
7      6    9.90084E+12 6   9.90092E+12 0.16862746  1
7      6    9.90108E+12 6   9.90115E+12 0.18039216  1
7      6    9.90133E+12 6   9.90142E+12 0.18039216  1
7      2    9.90172E+12 2   9.90178E+12 0.18039216  1
7      4    9.90199E+12 4   9.90207E+12 0.18039216  1
7      6    9.90238E+12 6   9.90251E+12 0.17254902  1
7      8    9.90316E+12 8   9.90324E+12 0.16862746  1
7      0    9.90347E+12 0   9.90357E+12 0.1764706   1
7      8    9.90393E+12 8   9.90399E+12 0.16470589  1
7      5    9.90413E+12 5   9.90421E+12 0.1764706   1
7      2    9.90432E+12 2   9.9044E+12  0.18823531  1
7      E    9.90479E+12 E   9.90488E+12 0.16078432  1
8      1    9.90574E+12 1   9.90582E+12 0.17254902  1
8      3    9.90614E+12 3   9.90622E+12 0.1764706   1
8      7    9.90655E+12 7   9.90663E+12 0.16470589  1
8      9    9.90707E+12 9   9.90716E+12 0.1764706   1
8      6    9.90752E+12 6   9.9076E+12  0.1764706   1
8      6    9.90774E+12 6   9.90784E+12 0.18431373  1
8      6    9.90804E+12 6   9.9081E+12  0.16862746  1
8      6    9.90835E+12 6   9.90845E+12 0.18039216  1
8      2    9.90875E+12 2   9.90882E+12 0.18431373  1
8      4    9.90911E+12 4   9.90917E+12 0.16470589  1
8      6    9.90956E+12 6   9.90964E+12 0.1764706   1
8      8    9.90979E+12 8   9.90987E+12 0.17254902  1
8      0    9.91011E+12 0   9.91017E+12 0.14509805  1
8      8    9.91064E+12 8   9.91072E+12 0.17254902  1
8      5    9.91084E+12 5   9.91092E+12 0.17254902  1
8      2    9.91108E+12 2   9.91118E+12 0.18823531  1
8      E    9.91164E+12 E   9.91174E+12 0.16862746  1
9      1    9.91869E+12 1   9.91875E+12 0.1764706   1
9      3    9.91966E+12 3   9.91973E+12 0.16862746  1
9      7    9.92011E+12 7   9.92019E+12 0.16470589  1
9      9    9.92056E+12 9   9.92064E+12 0.18039216  1
9      6    9.92095E+12 6   9.92103E+12 0.1764706   1
9      6    9.92116E+12 6   9.92125E+12 0.17254902  1
9      6    9.92141E+12 6   9.92149E+12 0.17254902  1
9      6    9.92166E+12 6   9.92176E+12 0.18039216  1
9      2    9.92201E+12 2   9.92209E+12 0.18431373  1
9      4    9.92229E+12 4   9.92239E+12 0.16470589  1
9      6    9.92271E+12 6   9.92281E+12 0.16470589  1
9      8    9.92339E+12 8   9.92345E+12 0.1764706   1
9      0    9.92362E+12 0   9.92372E+12 0.17254902  1
9      8    9.92451E+12 8   9.92459E+12 0.16862746  1
9      5    9.92524E+12 5   9.92532E+12 0.16862746  1
9      2    9.92571E+12 2   9.92577E+12 0.16862746  1
9      E    9.92647E+12 E   9.92652E+12 0.14117648  1

我正在将上面的每个数据文件读取到数据帧 df 中,并将其转发到 calculateFeatures 函数以执行一些计算,并将其保存并以新的形式返回数据帧df1calculateFeatures 函数如下:

import pandas as pd

df1 = pd.DataFrame()

def calculateFeatures(df,user_count):
    print(df)
    digit_count=1
    counter=1
    while counter!=11:
        df1['subject'] = "USER{}".format(user_count)
        df1['count'] = counter
        for index, row in df.head(n=17).iterrows():
            df1['KDT.{}'.format(digit_count)] = df['KRT'] - df['KPT']
            df1['PPT.{}'.format(digit_count)] = (df['KPT'].shift(-1)) - df['KPT']
            df1['PRT.{}'.format(digit_count)] = (df['KRT'].shift(-1)) - df['KPT']
            df1['RPT.{}'.format(digit_count)] = (df['KPT'].shift(-1)) - df['KRT']
            df1['RRT.{}'.format(digit_count)] = (df['KRT'].shift(-1)) - df['KPT']
            df1['KDT(n+1).{}'.format(digit_count)] = (df['KRT'].shift(-1)) - (df['KPT'].shift(-1))
            df1['FA.{}'.format(digit_count)] = df['FA']
            df1['FA(n+1).{}'.format(digit_count)] = df['FA'].shift(-1)
            digit_count +=1
        counter +=1
        digit_count = 1
        print(df1)
    return df1

第一个代码段中提到的用户数据帧 df 包含 10 (0-9) 组信息,每组包含 17 行(每组以第二个行值结束)列“KP”= E)。新的数据帧 df1 应包含来自 df 的 8 个基本计算,在内部循环中执行,对每组用户数据的 17 行重复(我试图控制这些数据)在外循环中)并将此信息作为一行存储在 df1 中,总计 8 * 17 = 136 + (1 USER COLUMN + 1 COUNT COLUMN) = 138 列

我在新数据帧 df1 中获得的列数很好,如上所述,为 138。

但问题是,我在 df1 中为每个用户获取了 170 行,这等于 df 的行数。而我应该得到 10 行(如在外循环中)。 1 行 138 列,对于 df 中的每组(17 行)用户数据。我知道,由于我是 pandas 数据框的新手,我在解释数据框时犯了一些错误,但我无法弄清楚。请帮忙。非常感谢!

在评论中提出建议后添加:

subject count   KDT.1   PPT.1   PRT.1   RPT.1   RRT.1   KDT(n+1).1  FA.1    FA(n+1).1   KDT.2   PPT.2   PRT.2   RPT.2   RRT.2   KDT(n+1).2  FA.2    FA(n+1).2   KDT.3   PPT.3   PRT.3   RPT.3   RRT.3   KDT(n+1).3  FA.3    FA(n+1).3   KDT.4   PPT.4   PRT.4   RPT.4   RRT.4   KDT(n+1).4  FA.4    FA(n+1).4   KDT.5   PPT.5   PRT.5   RPT.5   RRT.5   KDT(n+1).5  FA.5    FA(n+1).5   KDT.6   PPT.6   PRT.6   RPT.6   RRT.6   KDT(n+1).6  FA.6    FA(n+1).6   KDT.7   PPT.7   PRT.7   RPT.7   RRT.7   KDT(n+1).7  FA.7    FA(n+1).7   KDT.8   PPT.8   PRT.8   RPT.8   RRT.8   KDT(n+1).8  FA.8    FA(n+1).8   KDT.9   PPT.9   PRT.9   RPT.9   RRT.9   KDT(n+1).9  FA.9    FA(n+1).9   KDT.10  PPT.10  PRT.10  RPT.10  RRT.10  KDT(n+1).10 FA.10   FA(n+1).10  KDT.11  PPT.11  PRT.11  RPT.11  RRT.11  KDT(n+1).11 FA.11   FA(n+1).11  KDT.12  PPT.12  PRT.12  RPT.12  RRT.12  KDT(n+1).12 FA.12   FA(n+1).12  KDT.13  PPT.13  PRT.13  RPT.13  RRT.13  KDT(n+1).13 FA.13   FA(n+1).13  KDT.14  PPT.14  PRT.14  RPT.14  RRT.14  KDT(n+1).14 FA.14   FA(n+1).14  KDT.15  PPT.15  PRT.15  RPT.15  RRT.15  KDT(n+1).15 FA.15   FA(n+1).15  KDT.16  PPT.16  PRT.16  RPT.16  RRT.16  KDT(n+1).16 FA.16   FA(n+1).16
USER1   1   75863000    310189999   389853999   234326999   389853999   79664000    0.16862746  0.16862746  75863000    310189999   389853999   234326999   389853999   79664000    0.16862746  0.16862746  75863000    310189999   389853999   234326999   389853999   79664000    0.16862746  0.16862746  75863000    310189999   389853999   234326999   389853999   79664000    0.16862746  0.16862746  75863000    310189999   389853999   234326999   389853999   79664000    0.16862746  0.16862746  75863000    310189999   389853999   234326999   389853999   79664000    0.16862746  0.16862746  75863000    310189999   389853999   234326999   389853999   79664000    0.16862746  0.16862746  75863000    310189999   389853999   234326999   389853999   79664000    0.16862746  0.16862746  75863000    310189999   389853999   234326999   389853999   79664000    0.16862746  0.16862746  75863000    310189999   389853999   234326999   389853999   79664000    0.16862746  0.16862746  75863000    310189999   389853999   234326999   389853999   79664000    0.16862746  0.16862746  75863000    310189999   389853999   234326999   389853999   79664000    0.16862746  0.16862746  75863000    310189999   389853999   234326999   389853999   79664000    0.16862746  0.16862746  75863000    310189999   389853999   234326999   389853999   79664000    0.16862746  0.16862746  75863000    310189999   389853999   234326999   389853999   79664000    0.16862746  0.16862746  75863000    310189999   389853999   234326999   389853999   79664000    0.16862746  0.16862746
USER1   1   79664000    438039000   484985000   358375000   484985000   46946000    0.16862746  0.14117648  79664000    438039000   484985000   358375000   484985000   46946000    0.16862746  0.14117648  79664000    438039000   484985000   358375000   484985000   46946000    0.16862746  0.14117648  79664000    438039000   484985000   358375000   484985000   46946000    0.16862746  0.14117648  79664000    438039000   484985000   358375000   484985000   46946000    0.16862746  0.14117648  79664000    438039000   484985000   358375000   484985000   46946000    0.16862746  0.14117648  79664000    438039000   484985000   358375000   484985000   46946000    0.16862746  0.14117648  79664000    438039000   484985000   358375000   484985000   46946000    0.16862746  0.14117648  79664000    438039000   484985000   358375000   484985000   46946000    0.16862746  0.14117648  79664000    438039000   484985000   358375000   484985000   46946000    0.16862746  0.14117648  79664000    438039000   484985000   358375000   484985000   46946000    0.16862746  0.14117648  79664000    438039000   484985000   358375000   484985000   46946000    0.16862746  0.14117648  79664000    438039000   484985000   358375000   484985000   46946000    0.16862746  0.14117648  79664000    438039000   484985000   358375000   484985000   46946000    0.16862746  0.14117648  79664000    438039000   484985000   358375000   484985000   46946000    0.16862746  0.14117648  79664000    438039000   484985000   358375000   484985000   46946000    0.16862746  0.14117648
USER1   1   46946000    296481000   408431000   249535000   408431000   111950000   0.14117648  0.16470589  46946000    296481000   408431000   249535000   408431000   111950000   0.14117648  0.16470589  46946000    296481000   408431000   249535000   408431000   111950000   0.14117648  0.16470589  46946000    296481000   408431000   249535000   408431000   111950000   0.14117648  0.16470589  46946000    296481000   408431000   249535000   408431000   111950000   0.14117648  0.16470589  46946000    296481000   408431000   249535000   408431000   111950000   0.14117648  0.16470589  46946000    296481000   408431000   249535000   408431000   111950000   0.14117648  0.16470589  46946000    296481000   408431000   249535000   408431000   111950000   0.14117648  0.16470589  46946000    296481000   408431000   249535000   408431000   111950000   0.14117648  0.16470589  46946000    296481000   408431000   249535000   408431000   111950000   0.14117648  0.16470589  46946000    296481000   408431000   249535000   408431000   111950000   0.14117648  0.16470589  46946000    296481000   408431000   249535000   408431000   111950000   0.14117648  0.16470589  46946000    296481000   408431000   249535000   408431000   111950000   0.14117648  0.16470589  46946000    296481000   408431000   249535000   408431000   111950000   0.14117648  0.16470589  46946000    296481000   408431000   249535000   408431000   111950000   0.14117648  0.16470589  46946000    296481000   408431000   249535000   408431000   111950000   0.14117648  0.16470589
USER1   1   111950000   300217000   395692000   188267000   395692000   95475000    0.16470589  0.1764706   111950000   300217000   395692000   188267000   395692000   95475000    0.16470589  0.1764706   111950000   300217000   395692000   188267000   395692000   95475000    0.16470589  0.1764706   111950000   300217000   395692000   188267000   395692000   95475000    0.16470589  0.1764706   111950000   300217000   395692000   188267000   395692000   95475000    0.16470589  0.1764706   111950000   300217000   395692000   188267000   395692000   95475000    0.16470589  0.1764706   111950000   300217000   395692000   188267000   395692000   95475000    0.16470589  0.1764706   111950000   300217000   395692000   188267000   395692000   95475000    0.16470589  0.1764706   111950000   300217000   395692000   188267000   395692000   95475000    0.16470589  0.1764706   111950000   300217000   395692000   188267000   395692000   95475000    0.16470589  0.1764706   111950000   300217000   395692000   188267000   395692000   95475000    0.16470589  0.1764706   111950000   300217000   395692000   188267000   395692000   95475000    0.16470589  0.1764706   111950000   300217000   395692000   188267000   395692000   95475000    0.16470589  0.1764706   111950000   300217000   395692000   188267000   395692000   95475000    0.16470589  0.1764706   111950000   300217000   395692000   188267000   395692000   95475000    0.16470589  0.1764706   111950000   300217000   395692000   188267000   395692000   95475000    0.16470589  0.1764706
USER1   1   95475000    175107000   254849000   79632000    254849000   79742000    0.1764706   0.16470589  95475000    175107000   254849000   79632000    254849000   79742000    0.1764706   0.16470589  95475000    175107000   254849000   79632000    254849000   79742000    0.1764706   0.16470589  95475000    175107000   254849000   79632000    254849000   79742000    0.1764706   0.16470589  95475000    175107000   254849000   79632000    254849000   79742000    0.1764706   0.16470589  95475000    175107000   254849000   79632000    254849000   79742000    0.1764706   0.16470589  95475000    175107000   254849000   79632000    254849000   79742000    0.1764706   0.16470589  95475000    175107000   254849000   79632000    254849000   79742000    0.1764706   0.16470589  95475000    175107000   254849000   79632000    254849000   79742000    0.1764706   0.16470589  95475000    175107000   254849000   79632000    254849000   79742000    0.1764706   0.16470589  95475000    175107000   254849000   79632000    254849000   79742000    0.1764706   0.16470589  95475000    175107000   254849000   79632000    254849000   79742000    0.1764706   0.16470589  95475000    175107000   254849000   79632000    254849000   79742000    0.1764706   0.16470589  95475000    175107000   254849000   79632000    254849000   79742000    0.1764706   0.16470589  95475000    175107000   254849000   79632000    254849000   79742000    0.1764706   0.16470589  95475000    175107000   254849000   79632000    254849000   79742000    0.1764706   0.16470589
USER1   1   79742000    174423000   254294000   94681000    254294000   79871000    0.16470589  0.16862746  79742000    174423000   254294000   94681000    254294000   79871000    0.16470589  0.16862746  79742000    174423000   254294000   94681000    254294000   79871000    0.16470589  0.16862746  79742000    174423000   254294000   94681000    254294000   79871000    0.16470589  0.16862746  79742000    174423000   254294000   94681000    254294000   79871000    0.16470589  0.16862746  79742000    174423000   254294000   94681000    254294000   79871000    0.16470589  0.16862746  79742000    174423000   254294000   94681000    254294000   79871000    0.16470589  0.16862746  79742000    174423000   254294000   94681000    254294000   79871000    0.16470589  0.16862746  79742000    174423000   254294000   94681000    254294000   79871000    0.16470589  0.16862746  79742000    174423000   254294000   94681000    254294000   79871000    0.16470589  0.16862746  79742000    174423000   254294000   94681000    254294000   79871000    0.16470589  0.16862746  79742000    174423000   254294000   94681000    254294000   79871000    0.16470589  0.16862746  79742000    174423000   254294000   94681000    254294000   79871000    0.16470589  0.16862746  79742000    174423000   254294000   94681000    254294000   79871000    0.16470589  0.16862746  79742000    174423000   254294000   94681000    254294000   79871000    0.16470589  0.16862746  79742000    174423000   254294000   94681000    254294000   79871000    0.16470589  0.16862746
USER1   1   79871000    314216000   409585000   234345000   409585000   95369000    0.16862746  0.16470589  79871000    314216000   409585000   234345000   409585000   95369000    0.16862746  0.16470589  79871000    314216000   409585000   234345000   409585000   95369000    0.16862746  0.16470589  79871000    314216000   409585000   234345000   409585000   95369000    0.16862746  0.16470589  79871000    314216000   409585000   234345000   409585000   95369000    0.16862746  0.16470589  79871000    314216000   409585000   234345000   409585000   95369000    0.16862746  0.16470589  79871000    314216000   409585000   234345000   409585000   95369000    0.16862746  0.16470589  79871000    314216000   409585000   234345000   409585000   95369000    0.16862746  0.16470589  79871000    314216000   409585000   234345000   409585000   95369000    0.16862746  0.16470589  79871000    314216000   409585000   234345000   409585000   95369000    0.16862746  0.16470589  79871000    314216000   409585000   234345000   409585000   95369000    0.16862746  0.16470589  79871000    314216000   409585000   234345000   409585000   95369000    0.16862746  0.16470589  79871000    314216000   409585000   234345000   409585000   95369000    0.16862746  0.16470589  79871000    314216000   409585000   234345000   409585000   95369000    0.16862746  0.16470589  79871000    314216000   409585000   234345000   409585000   95369000    0.16862746  0.16470589  79871000    314216000   409585000   234345000   409585000   95369000    0.16862746  0.16470589
USER1   1   95369000    314901000   410284000   219532000   410284000   95383000    0.16470589  0.18431373  95369000    314901000   410284000   219532000   410284000   95383000    0.16470589  0.18431373  95369000    314901000   410284000   219532000   410284000   95383000    0.16470589  0.18431373  95369000    314901000   410284000   219532000   410284000   95383000    0.16470589  0.18431373  95369000    314901000   410284000   219532000   410284000   95383000    0.16470589  0.18431373  95369000    314901000   410284000   219532000   410284000   95383000    0.16470589  0.18431373  95369000    314901000   410284000   219532000   410284000   95383000    0.16470589  0.18431373  95369000    314901000   410284000   219532000   410284000   95383000    0.16470589  0.18431373  95369000    314901000   410284000   219532000   410284000   95383000    0.16470589  0.18431373  95369000    314901000   410284000   219532000   410284000   95383000    0.16470589  0.18431373  95369000    314901000   410284000   219532000   410284000   95383000    0.16470589  0.18431373  95369000    314901000   410284000   219532000   410284000   95383000    0.16470589  0.18431373  95369000    314901000   410284000   219532000   410284000   95383000    0.16470589  0.18431373  95369000    314901000   410284000   219532000   410284000   95383000    0.16470589  0.18431373  95369000    314901000   410284000   219532000   410284000   95383000    0.16470589  0.18431373  95369000    314901000   410284000   219532000   410284000   95383000    0.16470589  0.18431373
USER1   1   95383000    330080000   425431000   234697000   425431000   95351000    0.18431373  0.16470589  95383000    330080000   425431000   234697000   425431000   95351000    0.18431373  0.16470589  95383000    330080000   425431000   234697000   425431000   95351000    0.18431373  0.16470589  95383000    330080000   425431000   234697000   425431000   95351000    0.18431373  0.16470589  95383000    330080000   425431000   234697000   425431000   95351000    0.18431373  0.16470589  95383000    330080000   425431000   234697000   425431000   95351000    0.18431373  0.16470589  95383000    330080000   425431000   234697000   425431000   95351000    0.18431373  0.16470589  95383000    330080000   425431000   234697000   425431000   95351000    0.18431373  0.16470589  95383000    330080000   425431000   234697000   425431000   95351000    0.18431373  0.16470589  95383000    330080000   425431000   234697000   425431000   95351000    0.18431373  0.16470589  95383000    330080000   425431000   234697000   425431000   95351000    0.18431373  0.16470589  95383000    330080000   425431000   234697000   425431000   95351000    0.18431373  0.16470589  95383000    330080000   425431000   234697000   425431000   95351000    0.18431373  0.16470589  95383000    330080000   425431000   234697000   425431000   95351000    0.18431373  0.16470589  95383000    330080000   425431000   234697000   425431000   95351000    0.18431373  0.16470589  95383000    330080000   425431000   234697000   425431000   95351000    0.18431373  0.16470589
USER1   1   95351000    469414000   549249000   374063000   549249000   79835000    0.16470589  0.16862746  95351000    469414000   549249000   374063000   549249000   79835000    0.16470589  0.16862746  95351000    469414000   549249000   374063000   549249000   79835000    0.16470589  0.16862746  95351000    469414000   549249000   374063000   549249000   79835000    0.16470589  0.16862746  95351000    469414000   549249000   374063000   549249000   79835000    0.16470589  0.16862746  95351000    469414000   549249000   374063000   549249000   79835000    0.16470589  0.16862746  95351000    469414000   549249000   374063000   549249000   79835000    0.16470589  0.16862746  95351000    469414000   549249000   374063000   549249000   79835000    0.16470589  0.16862746  95351000    469414000   549249000   374063000   549249000   79835000    0.16470589  0.16862746  95351000    469414000   549249000   374063000   549249000   79835000    0.16470589  0.16862746  95351000    469414000   549249000   374063000   549249000   79835000    0.16470589  0.16862746  95351000    469414000   549249000   374063000   549249000   79835000    0.16470589  0.16862746  95351000    469414000   549249000   374063000   549249000   79835000    0.16470589  0.16862746  95351000    469414000   549249000   374063000   549249000   79835000    0.16470589  0.16862746  95351000    469414000   549249000   374063000   549249000   79835000    0.16470589  0.16862746  95351000    469414000   549249000   374063000   549249000   79835000    0.16470589  0.16862746

对于 csv 数据的格式错误,我们深表歉意。但上面的数据样本应该是输出的样子。正如你所看到的。第一列指示用户,第二列应指示计数(df 中的集合中的 1-10 或 0-9)。上面的示例仅根据我在顶部提供的 df 中的 USER1 原始数据计算得出(不是精确数据)。当 df 更新为 USER2 原始数据时,df1 将提供 USER2 的计算用户数据,共 10 行 138 列,类似于上面显示的数据形式用户1。谢谢。

最佳答案

考虑一种大流行(pandas 的 python-ic)解决方案,该解决方案避免逐行循环,而是在矢量化过程中处理数据帧和系列。具体来说:

  1. 在一次调用中计算所需的列。
  2. 使用 melt 将数据 reshape 为 long,以实现并排变量和值组合。
  3. 使用 pivot_table 将数据 reshape 为宽型。

将所有三个步骤集成到您的用户定义方法 calculateFeatures 中。 注意:仔细检查输出并测试计算是否正确处理,尽管有所需的最终结构 (10 X 138)。

分配新的计算列

### ORIGINAL COLUMNS
df = ...
orig_cols = df.columns[1:].to_list()

### NEW COLUMNS
df['subject'] = "USER{}".format(user_count)
df['counter'] = list(range(1,18)) * (df['SL_NO'].max()+1)
df['KDT.'] = df['KRT'] - df['KPT']
df['PPT.'] = (df['KPT'].shift(-1)) - df['KPT']
df['PRT.'] = (df['KRT'].shift(-1)) - df['KPT']
df['RPT.'] = (df['KPT'].shift(-1)) - df['KRT']
df['RRT.'] = (df['KRT'].shift(-1)) - df['KPT']
df['KDT(n+1).'] = (df['KRT'].shift(-1)) - (df['KPT'].shift(-1))
df['FA.'] = df['FA']
df['FA(n+1).'] = df['FA'].shift(-1)

new_cols = df.columns[9:]

print(df.loc[:, df.columns[7:]].tail(20))
#      subject  counter         KDT.          PPT.          PRT.          RPT.          RRT.    KDT(n+1).       FA.  FA(n+1).
# 150  USER150       15   80000000.0  2.400000e+08  3.400000e+08  1.600000e+08  3.400000e+08  100000000.0  0.172549  0.188235
# 151  USER150       16  100000000.0  5.600000e+08  6.600000e+08  4.600000e+08  6.600000e+08  100000000.0  0.188235  0.168627
# 152  USER150       17  100000000.0  7.050000e+09  7.110000e+09  6.950000e+09  7.110000e+09   60000000.0  0.168627  0.176471
# 153  USER150        1   60000000.0  9.700000e+08  1.040000e+09  9.100000e+08  1.040000e+09   70000000.0  0.176471  0.168627
# 154  USER150        2   70000000.0  4.500000e+08  5.300000e+08  3.800000e+08  5.300000e+08   80000000.0  0.168627  0.164706
# 155  USER150        3   80000000.0  4.500000e+08  5.300000e+08  3.700000e+08  5.300000e+08   80000000.0  0.164706  0.180392
# 156  USER150        4   80000000.0  3.900000e+08  4.700000e+08  3.100000e+08  4.700000e+08   80000000.0  0.180392  0.176471
# 157  USER150        5   80000000.0  2.100000e+08  3.000000e+08  1.300000e+08  3.000000e+08   90000000.0  0.176471  0.172549
# 158  USER150        6   90000000.0  2.500000e+08  3.300000e+08  1.600000e+08  3.300000e+08   80000000.0  0.172549  0.172549
# 159  USER150        7   80000000.0  2.500000e+08  3.500000e+08  1.700000e+08  3.500000e+08  100000000.0  0.172549  0.180392
# 160  USER150        8  100000000.0  3.500000e+08  4.300000e+08  2.500000e+08  4.300000e+08   80000000.0  0.180392  0.184314
# 161  USER150        9   80000000.0  2.800000e+08  3.800000e+08  2.000000e+08  3.800000e+08  100000000.0  0.184314  0.164706
# 162  USER150       10  100000000.0  4.200000e+08  5.200000e+08  3.200000e+08  5.200000e+08  100000000.0  0.164706  0.164706
# 163  USER150       11  100000000.0  6.800000e+08  7.400000e+08  5.800000e+08  7.400000e+08   60000000.0  0.164706  0.176471
# 164  USER150       12   60000000.0  2.300000e+08  3.300000e+08  1.700000e+08  3.300000e+08  100000000.0  0.176471  0.172549
# 165  USER150       13  100000000.0  8.900000e+08  9.700000e+08  7.900000e+08  9.700000e+08   80000000.0  0.172549  0.168627
# 166  USER150       14   80000000.0  7.300000e+08  8.100000e+08  6.500000e+08  8.100000e+08   80000000.0  0.168627  0.168627
# 167  USER150       15   80000000.0  4.700000e+08  5.300000e+08  3.900000e+08  5.300000e+08   60000000.0  0.168627  0.168627
# 168  USER150       16   60000000.0  7.600000e+08  8.100000e+08  7.000000e+08  8.100000e+08   50000000.0  0.168627  0.141176
# 169  USER150       17   50000000.0           NaN           NaN           NaN           NaN          NaN  0.141176       NaN

reshape 长数据

mdf = (pd.melt(df.drop(columns=orig_cols), 
               id_vars = ['subject', 'SL_NO', 'counter'])
         .assign(variable = lambda x: x['variable'] + x['counter'].astype('str'))
       )

print(mdf.tail(20))    
#       subject  SL_NO  counter    variable     value
# 1340  USER150      8       15  FA(n+1).15  0.188235
# 1341  USER150      8       16  FA(n+1).16  0.168627
# 1342  USER150      8       17  FA(n+1).17  0.176471
# 1343  USER150      9        1   FA(n+1).1  0.168627
# 1344  USER150      9        2   FA(n+1).2  0.164706
# 1345  USER150      9        3   FA(n+1).3  0.180392
# 1346  USER150      9        4   FA(n+1).4  0.176471
# 1347  USER150      9        5   FA(n+1).5  0.172549
# 1348  USER150      9        6   FA(n+1).6  0.172549
# 1349  USER150      9        7   FA(n+1).7  0.180392
# 1350  USER150      9        8   FA(n+1).8  0.184314
# 1351  USER150      9        9   FA(n+1).9  0.164706
# 1352  USER150      9       10  FA(n+1).10  0.164706
# 1353  USER150      9       11  FA(n+1).11  0.176471
# 1354  USER150      9       12  FA(n+1).12  0.172549
# 1355  USER150      9       13  FA(n+1).13  0.168627
# 1356  USER150      9       14  FA(n+1).14  0.168627
# 1357  USER150      9       15  FA(n+1).15  0.168627
# 1358  USER150      9       16  FA(n+1).16  0.141176
# 1359  USER150      9       17  FA(n+1).17       NaN

reshape 数据范围 (结果为 10 行 X 138 列)

from itertools import product                        # TO RE-ORDER COLUMNS USING reindex
...

pvt_df = (mdf.pivot_table(index = ['subject', 'SL_NO'],
                          columns = 'variable',
                          values = 'value',
                          aggfunc = 'max')
             .reindex([j+str(i) for i,j in list(product(list(range(1,18)), new_cols))],
                      axis = 1)
         )

print(pvt_df)
# subject   SL_NO   KDT.1   PPT.1   PRT.1   RPT.1   RRT.1   KDT(n+1).1  FA.1    FA(n+1).1   KDT.2   PPT.2   PRT.2   RPT.2   RRT.2   KDT(n+1).2  FA.2    FA(n+1).2   KDT.3   PPT.3   PRT.3   RPT.3   RRT.3   KDT(n+1).3  FA.3    FA(n+1).3   KDT.4   PPT.4   PRT.4   RPT.4   RRT.4   KDT(n+1).4  FA.4    FA(n+1).4   KDT.5   PPT.5   PRT.5   RPT.5   RRT.5   KDT(n+1).5  FA.5    FA(n+1).5   KDT.6   PPT.6   PRT.6   RPT.6   RRT.6   KDT(n+1).6  FA.6    FA(n+1).6   KDT.7   PPT.7   PRT.7   RPT.7   RRT.7   KDT(n+1).7  FA.7    FA(n+1).7   KDT.8   PPT.8   PRT.8   RPT.8   RRT.8   KDT(n+1).8  FA.8    FA(n+1).8   KDT.9   PPT.9   PRT.9   RPT.9   RRT.9   KDT(n+1).9  FA.9    FA(n+1).9   KDT.10  PPT.10  PRT.10  RPT.10  RRT.10  KDT(n+1).10 FA.10   FA(n+1).10  KDT.11  PPT.11  PRT.11  RPT.11  RRT.11  KDT(n+1).11 FA.11   FA(n+1).11  KDT.12  PPT.12  PRT.12  RPT.12  RRT.12  KDT(n+1).12 FA.12   FA(n+1).12  KDT.13  PPT.13  PRT.13  RPT.13  RRT.13  KDT(n+1).13 FA.13   FA(n+1).13  KDT.14  PPT.14  PRT.14  RPT.14  RRT.14  KDT(n+1).14 FA.14   FA(n+1).14  KDT.15  PPT.15  PRT.15  RPT.15  RRT.15  KDT(n+1).15 FA.15   FA(n+1).15  KDT.16  PPT.16  PRT.16  RPT.16  RRT.16  KDT(n+1).16 FA.16   FA(n+1).16  KDT.17  PPT.17  PRT.17  RPT.17  RRT.17  KDT(n+1).17 FA.17   FA(n+1).17
# USER150   0   80000000    310000000   390000000   230000000   390000000   80000000    0.16862746  0.16862746  80000000    440000000   490000000   360000000   490000000   50000000    0.16862746  0.14117648  50000000    300000000   410000000   250000000   410000000   110000000   0.14117648  0.16470589  110000000   300000000   390000000   190000000   390000000   90000000    0.16470589  0.1764706   90000000    170000000   250000000   80000000    250000000   80000000    0.1764706   0.16470589  80000000    180000000   260000000   100000000   260000000   80000000    0.16470589  0.16862746  80000000    310000000   410000000   230000000   410000000   100000000   0.16862746  0.16470589  100000000   320000000   410000000   220000000   410000000   90000000    0.16470589  0.18431373  90000000    330000000   420000000   240000000   420000000   90000000    0.18431373  0.16470589  90000000    460000000   540000000   370000000   540000000   80000000    0.16470589  0.16862746  80000000    270000000   350000000   190000000   350000000   80000000    0.16862746  0.16470589  80000000    320000000   430000000   240000000   430000000   110000000   0.16470589  0.16078432  110000000   640000000   730000000   530000000   730000000   90000000    0.16078432  0.15686275  90000000    200000000   280000000   110000000   280000000   80000000    0.15686275  0.16078432  80000000    220000000   290000000   140000000   290000000   70000000    0.16078432  0.18431373  70000000    1810000000  1880000000  1740000000  1880000000  70000000    0.18431373  0.16470589  70000000    9160000000  9230000000  9090000000  9230000000  70000000    0.16470589  0.19607845
# USER150   1   70000000    250000000   340000000   180000000   340000000   90000000    0.19607845  0.19607845  90000000    420000000   480000000   330000000   480000000   60000000    0.19607845  0.15294118  60000000    420000000   500000000   360000000   500000000   80000000    0.15294118  0.16862746  80000000    250000000   330000000   170000000   330000000   80000000    0.16862746  0.1764706   80000000    160000000   260000000   80000000    260000000   100000000   0.1764706   0.18431373  100000000   180000000   270000000   80000000    270000000   90000000    0.18431373  0.1764706   90000000    300000000   390000000   210000000   390000000   90000000    0.1764706   0.18039216  90000000    330000000   410000000   240000000   410000000   80000000    0.18039216  0.18431373  80000000    330000000   400000000   250000000   400000000   70000000    0.18431373  0.1764706   70000000    510000000   610000000   440000000   610000000   100000000   0.1764706   0.18431373  100000000   250000000   330000000   150000000   330000000   80000000    0.18431373  0.18039216  80000000    270000000   370000000   190000000   370000000   100000000   0.18039216  0.15686275  100000000   530000000   590000000   430000000   590000000   60000000    0.15686275  0.16078432  60000000    220000000   300000000   160000000   300000000   80000000    0.16078432  0.1764706   80000000    210000000   290000000   130000000   290000000   80000000    0.1764706   0.17254902  80000000    1100000000  1180000000  1020000000  1180000000  80000000    0.17254902  0.14117648  80000000    700000000   780000000   620000000   780000000   80000000    0.14117648  0.1764706
# USER150   2   80000000    330000000   410000000   250000000   410000000   80000000    0.1764706   0.19215688  80000000    410000000   470000000   330000000   470000000   60000000    0.19215688  0.1254902   60000000    420000000   510000000   360000000   510000000   90000000    0.1254902   0.16470589  90000000    470000000   550000000   380000000   550000000   80000000    0.16470589  0.16862746  80000000    170000000   270000000   90000000    270000000   100000000   0.16862746  0.17254902  100000000   240000000   300000000   140000000   300000000   60000000    0.17254902  0.1764706   60000000    240000000   350000000   180000000   350000000   110000000   0.1764706   0.17254902  110000000   370000000   450000000   260000000   450000000   80000000    0.17254902  0.18039216  80000000    220000000   320000000   140000000   320000000   100000000   0.18039216  0.16862746  100000000   380000000   490000000   280000000   490000000   110000000   0.16862746  0.16862746  110000000   420000000   490000000   310000000   490000000   70000000    0.16862746  0.18039216  70000000    290000000   380000000   220000000   380000000   90000000    0.18039216  0.16470589  90000000    420000000   500000000   330000000   500000000   80000000    0.16470589  0.17254902  80000000    200000000   280000000   120000000   280000000   80000000    0.17254902  0.1764706   80000000    210000000   290000000   130000000   290000000   80000000    0.1764706   0.19215688  80000000    610000000   700000000   530000000   700000000   90000000    0.19215688  0.17254902  90000000    690000000   760000000   600000000   760000000   70000000    0.17254902  0.1764706
# USER150   3   70000000    320000000   420000000   250000000   420000000   100000000   0.1764706   0.18823531  100000000   410000000   490000000   310000000   490000000   80000000    0.18823531  0.15294118  80000000    490000000   580000000   410000000   580000000   90000000    0.15294118  0.16470589  90000000    500000000   580000000   410000000   580000000   80000000    0.16470589  0.18431373  80000000    220000000   300000000   140000000   300000000   80000000    0.18431373  0.1764706   80000000    250000000   340000000   170000000   340000000   90000000    0.1764706   0.17254902  90000000    270000000   380000000   180000000   380000000   110000000   0.17254902  0.18039216  110000000   340000000   420000000   230000000   420000000   80000000    0.18039216  0.1764706   80000000    320000000   400000000   240000000   400000000   80000000    0.1764706   0.17254902  80000000    760000000   840000000   680000000   840000000   80000000    0.17254902  0.16862746  80000000    250000000   330000000   170000000   330000000   80000000    0.16862746  0.16470589  80000000    290000000   370000000   210000000   370000000   80000000    0.16470589  0.15294118  80000000    870000000   950000000   790000000   950000000   80000000    0.15294118  0.16862746  80000000    220000000   300000000   140000000   300000000   80000000    0.16862746  0.1764706   80000000    200000000   280000000   120000000   280000000   80000000    0.1764706   0.18823531  80000000    690000000   780000000   610000000   780000000   90000000    0.18823531  0.17254902  90000000    660000000   730000000   570000000   730000000   70000000    0.17254902  0.17254902
# USER150   4   70000000    310000000   390000000   240000000   390000000   80000000    0.17254902  0.1764706   80000000    340000000   410000000   260000000   410000000   70000000    0.1764706   0.15686275  70000000    950000000   1030000000  880000000   1030000000  80000000    0.15686275  0.16862746  80000000    500000000   560000000   420000000   560000000   60000000    0.16862746  0.17254902  60000000    190000000   270000000   130000000   270000000   80000000    0.17254902  0.18039216  80000000    280000000   360000000   200000000   360000000   80000000    0.18039216  0.1764706   80000000    270000000   370000000   190000000   370000000   100000000   0.1764706   0.17254902  100000000   350000000   460000000   250000000   460000000   110000000   0.17254902  0.1764706   110000000   330000000   410000000   220000000   410000000   80000000    0.1764706   0.15686275  80000000    620000000   680000000   540000000   680000000   60000000    0.15686275  0.16862746  60000000    280000000   340000000   220000000   340000000   60000000    0.16862746  0.17254902  60000000    270000000   360000000   210000000   360000000   90000000    0.17254902  0.15686275  90000000    950000000   1030000000  860000000   1030000000  80000000    0.15686275  0.16078432  80000000    200000000   280000000   120000000   280000000   80000000    0.16078432  0.17254902  80000000    190000000   270000000   110000000   270000000   80000000    0.17254902  0.18039216  80000000    560000000   640000000   480000000   640000000   80000000    0.18039216  0.16078432  80000000    690000000   770000000   610000000   770000000   80000000    0.16078432  0.18039216
# USER150   5   80000000    1090000000  1150000000  1010000000  1150000000  60000000    0.18039216  0.18039216  60000000    420000000   480000000   360000000   480000000   60000000    0.18039216  0.15686275  60000000    390000000   490000000   330000000   490000000   100000000   0.15686275  0.16862746  100000000   330000000   410000000   230000000   410000000   80000000    0.16862746  0.16078432  80000000    170000000   270000000   90000000    270000000   100000000   0.16078432  0.17254902  100000000   230000000   320000000   130000000   320000000   90000000    0.17254902  0.1764706   90000000    250000000   340000000   160000000   340000000   90000000    0.1764706   0.18431373  90000000    300000000   410000000   210000000   410000000   110000000   0.18431373  0.1764706   110000000   330000000   410000000   220000000   410000000   80000000    0.1764706   0.16862746  80000000    410000000   500000000   330000000   500000000   90000000    0.16862746  0.18823531  90000000    500000000   560000000   410000000   560000000   60000000    0.18823531  0.16862746  60000000    310000000   410000000   250000000   410000000   100000000   0.16862746  0.16470589  100000000   590000000   670000000   490000000   670000000   80000000    0.16470589  0.16078432  80000000    210000000   300000000   130000000   300000000   90000000    0.16078432  0.1764706   90000000    220000000   280000000   130000000   280000000   60000000    0.1764706   0.19215688  60000000    420000000   500000000   360000000   500000000   80000000    0.19215688  0.16470589  80000000    740000000   810000000   660000000   810000000   70000000    0.16470589  0.16078432
# USER150   6   70000000    350000000   420000000   280000000   420000000   70000000    0.16078432  0.18431373  70000000    470000000   520000000   400000000   520000000   50000000    0.18431373  0.15686275  50000000    580000000   660000000   530000000   660000000   80000000    0.15686275  0.17254902  80000000    430000000   510000000   350000000   510000000   80000000    0.17254902  0.18431373  80000000    190000000   270000000   110000000   270000000   80000000    0.18431373  0.19215688  80000000    220000000   300000000   140000000   300000000   80000000    0.19215688  0.19607845  80000000    240000000   320000000   160000000   320000000   80000000    0.19607845  0.1764706   80000000    280000000   380000000   200000000   380000000   100000000   0.1764706   0.17254902  100000000   350000000   410000000   250000000   410000000   60000000    0.17254902  0.16470589  60000000    360000000   440000000   300000000   440000000   80000000    0.16470589  0.17254902  80000000    280000000   360000000   200000000   360000000   80000000    0.17254902  0.17254902  80000000    290000000   360000000   210000000   360000000   70000000    0.17254902  0.16470589  70000000    760000000   840000000   690000000   840000000   80000000    0.16470589  0.15294118  80000000    220000000   300000000   140000000   300000000   80000000    0.15294118  0.1764706   80000000    220000000   280000000   140000000   280000000   60000000    0.1764706   0.18039216  60000000    510000000   560000000   450000000   560000000   50000000    0.18039216  0.10196079  50000000    780000000   860000000   730000000   860000000   80000000    0.10196079  0.16078432
# USER150   7   80000000    380000000   460000000   300000000   460000000   80000000    0.16078432  0.18039216  80000000    450000000   530000000   370000000   530000000   80000000    0.18039216  0.15294118  80000000    610000000   700000000   530000000   700000000   90000000    0.15294118  0.16470589  90000000    370000000   450000000   280000000   450000000   80000000    0.16470589  0.17254902  80000000    210000000   290000000   130000000   290000000   80000000    0.17254902  0.16862746  80000000    240000000   310000000   160000000   310000000   70000000    0.16862746  0.18039216  70000000    250000000   340000000   180000000   340000000   90000000    0.18039216  0.18039216  90000000    390000000   450000000   300000000   450000000   60000000    0.18039216  0.18039216  60000000    270000000   350000000   210000000   350000000   80000000    0.18039216  0.18039216  80000000    390000000   520000000   310000000   520000000   130000000   0.18039216  0.17254902  130000000   780000000   860000000   650000000   860000000   80000000    0.17254902  0.16862746  80000000    310000000   410000000   230000000   410000000   100000000   0.16862746  0.1764706   100000000   460000000   520000000   360000000   520000000   60000000    0.1764706   0.16470589  60000000    200000000   280000000   140000000   280000000   80000000    0.16470589  0.1764706   80000000    190000000   270000000   110000000   270000000   80000000    0.1764706   0.18823531  80000000    470000000   560000000   390000000   560000000   90000000    0.18823531  0.16078432  90000000    950000000   1030000000  860000000   1030000000  80000000    0.16078432  0.17254902
# USER150   8   80000000    400000000   480000000   320000000   480000000   80000000    0.17254902  0.1764706   80000000    410000000   490000000   330000000   490000000   80000000    0.1764706   0.16470589  80000000    520000000   610000000   440000000   610000000   90000000    0.16470589  0.1764706   90000000    450000000   530000000   360000000   530000000   80000000    0.1764706   0.1764706   80000000    220000000   320000000   140000000   320000000   100000000   0.1764706   0.18431373  100000000   300000000   360000000   200000000   360000000   60000000    0.18431373  0.16862746  60000000    310000000   410000000   250000000   410000000   100000000   0.16862746  0.18039216  100000000   400000000   470000000   300000000   470000000   70000000    0.18039216  0.18431373  70000000    360000000   420000000   290000000   420000000   60000000    0.18431373  0.16470589  60000000    450000000   530000000   390000000   530000000   80000000    0.16470589  0.1764706   80000000    230000000   310000000   150000000   310000000   80000000    0.1764706   0.17254902  80000000    320000000   380000000   240000000   380000000   60000000    0.17254902  0.14509805  60000000    530000000   610000000   470000000   610000000   80000000    0.14509805  0.17254902  80000000    200000000   280000000   120000000   280000000   80000000    0.17254902  0.17254902  80000000    240000000   340000000   160000000   340000000   100000000   0.17254902  0.18823531  100000000   560000000   660000000   460000000   660000000   100000000   0.18823531  0.16862746  100000000   7050000000  7110000000  6950000000  7110000000  60000000    0.16862746  0.1764706
# USER150   9   60000000    970000000   1040000000  910000000   1040000000  70000000    0.1764706   0.16862746  70000000    450000000   530000000   380000000   530000000   80000000    0.16862746  0.16470589  80000000    450000000   530000000   370000000   530000000   80000000    0.16470589  0.18039216  80000000    390000000   470000000   310000000   470000000   80000000    0.18039216  0.1764706   80000000    210000000   300000000   130000000   300000000   90000000    0.1764706   0.17254902  90000000    250000000   330000000   160000000   330000000   80000000    0.17254902  0.17254902  80000000    250000000   350000000   170000000   350000000   100000000   0.17254902  0.18039216  100000000   350000000   430000000   250000000   430000000   80000000    0.18039216  0.18431373  80000000    280000000   380000000   200000000   380000000   100000000   0.18431373  0.16470589  100000000   420000000   520000000   320000000   520000000   100000000   0.16470589  0.16470589  100000000   680000000   740000000   580000000   740000000   60000000    0.16470589  0.1764706   60000000    230000000   330000000   170000000   330000000   100000000   0.1764706   0.17254902  100000000   890000000   970000000   790000000   970000000   80000000    0.17254902  0.16862746  80000000    730000000   810000000   650000000   810000000   80000000    0.16862746  0.16862746  80000000    470000000   530000000   390000000   530000000   60000000    0.16862746  0.16862746  60000000    760000000   810000000   700000000   810000000   50000000    0.16862746  0.14117648  50000000                        0.14117648  

关于python - 无法使用 Pandas DataFrame 对象上的循环获得正确的 DataFrame 形状(行*列),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59156509/

相关文章:

将 Python 脚本放入 plone 模板以呈现对象列表

python - 如何根据时间间隔合并两个数据帧并进行转换

python - matplotlib 如何知道要在此代码中显示什么?

python - 我如何快速洗牌 Pandas 系列

pandas - 按最大值作为索引对数据帧进行切片

python - 在 Python 上使用 app.route 进行循环

python - 如何将pandas中的groupby中的值与先前的值进行比较

python - 查找彼此接近的对象边界

python - 如何将groupby中的行与多个条件组合起来?

python - 将 Pandas 数据框缩减为其他数据框