Как выполнить интерполяцию для ряда данных (вектор столбца), используя самый большой вектор столбца в кадре данных в R - PullRequest
0 голосов
/ 05 октября 2019

У меня есть лист Excel, содержащий ряд данных в форме векторов столбцов. вектор каждого столбца имеет разную длину. Пример данных в таблице Excel представлен в виде векторов столбцов, как показано ниже.

No  1           2           4           5           6          7
1   7.68565     7.431991    7.620156    7.34955     7.493848    7.244905
2   8.247334    7.895186    8.107751    7.629121    8.01165     7.898938
3   8.861417    8.411331    8.616113    7.960177    8.551065    8.432346
4   9.522981    8.945542    9.117843    8.263698    9.129371    9.118917
5   10.10206    9.465829    9.621576    8.515904    9.680468    9.695693
6   10.74194    10.05058    10.2111     8.824739    10.22375    10.48411
7   11.41614    10.59113    10.70612    9.12775     10.78299    11.1652
8   12.08601    11.12069    11.23061    9.445629    11.32874    11.8499
9   12.8509     11.68692    11.81479    9.762563    11.92125    12.77563
10  13.79793    12.31746    12.3436     10.12344    12.5586     14.05427
11  14.40335    12.85409    12.81579    10.4148     13.2323     14.74745
12  14.96397    13.44764    13.39124    10.76968    13.91571    15.48449
13  15.49457    13.5184     13.94058    11.05081    14.43318    16.12423
14  16.06153    13.99386    14.35261    11.38416    14.95082    16.84513
15  16.61133    14.4879     14.86438    11.71484    15.47574    17.42593
16  17.24876    14.95296    15.30651    12.06838    16.01853    18.05138
17  17.8686     15.48764    15.82241    12.41315    16.546      18.69939
18  18.49424    16.01478    16.33324    12.76782    17.07923    19.29467
19  19.0651     16.5115     16.8808     13.11234    17.62211    20.00391
20  19.73842    17.07482    17.40481    13.46479    18.14528    20.67474
21  20.47123    17.51353    17.88455    13.55012    18.69565    21.35446
22  21.16333    18.00172    18.38069    13.82592    19.23222    22.16516
23  21.83083    18.55357    18.79004    14.10343    19.93576    23.0249
24  22.50095    19.04932    19.25296    14.38997    20.6087     23.75609
25  23.27895    19.66359    19.68497    14.66933    21.19856    24.33014
26  23.86791    20.19746    20.25114    14.96252    21.7933     25.16132
27  24.42128    20.79322    20.8394     15.27082    22.4216     25.64038
28  25.02747    21.34963    21.36803    15.59645    22.95553    26.40612
29  25.64392    21.96625    21.92369    15.90159    23.62858    26.99359
30  26.15457    22.51419    22.49119    16.21841    24.27062    27.48933
31  26.78083    23.14052    23.09582    16.5353     24.75912    28.13525
32  27.39095    23.71215    23.71597    16.84909    25.34079    28.66253
33  28.04546    24.23099    24.22622    17.23782    25.90887    29.27824
34  28.68887    24.69722    24.76757    17.58071    26.51803    30.06892
35  29.45707    25.24266    25.30781    17.91193    27.12488    30.87034
36  30.03946    25.75705    25.86998    18.24291    27.73606    31.71053
37  30.71511    26.29254    26.34333    18.50986    28.30462    32.37958
38  31.42378    26.91853    26.69165    18.81327    28.91142    33.07085
39  32.50335    27.44403    27.12134    19.20657    29.51637    33.8685
40  33.12328    27.98299    27.578      19.55173    30.14371    34.5783
41  33.71293    28.42661    28.16382    19.818      30.7509     35.29098
42  34.22313    29.11766    28.58075    20.20322    31.50584    35.97233
43  34.84822    29.69339    29.14229    20.60828    32.14028    36.53085
44  35.51228    30.30699    29.71523    20.86474    32.72842    36.82623
45  36.11674    30.89355    30.28881    21.24548    33.02594    37.79391
46  36.80722    31.50952    30.94186    21.56593    33.17226    38.42553
47  37.60966    31.98561    31.63391    21.89768    33.34089    39.20039
48  38.25016    32.63639    32.19883    22.23119    33.67384    39.98531
49  38.95744    33.18134    32.72147    22.4859     34.27073    40.76857
50  39.66163    33.67109    33.14864    22.90394    34.86681    41.49251
51  40.37425    34.12463    33.60807    23.26918    35.59697    42.51444
52  41.23707    34.66628    34.09723    23.52158    36.24535    43.14603
53  41.82558    35.1961     34.57659    23.89679    36.90796    44.16233
54  42.55081    35.72951    35.03618    24.49229    37.65297    44.59068
55  43.39907    36.31952    35.46371    24.81181    38.33818    45.22966
56  44.05056    37.05194    35.98615    25.12065    38.85623    46.23367
57  44.78049    37.1323     36.51719    25.4582     39.54339    46.54872
58  45.43282    37.76535    37.09313    25.88998    40.23827    47.07784
59  46.18882    38.27575    37.17476    26.22639    40.92604    47.807
60  46.90982    38.88576    37.90604    26.56257    41.63398    48.4778
61  47.56264    39.64927    38.5283     26.8499     42.29979    49.21885
62  48.10035    40.19561    39.16806    27.1614     42.99679    50.18735
63  49.01068    40.89077    39.80176    27.43677    43.8278     51.9102
64  49.76271    41.6514     40.39578    27.89204    44.4915     52.78747
65  50.53434    42.09778    41.03402    28.18638    45.01828    53.46253
66  51.67479    42.83619    41.44307    28.49254    45.8151     54.44443
67  52.20818    43.35224    42.17046    28.87821    46.38069    55.20507
68  52.84818    43.94838    42.54818    29.18387    47.27983    55.71156
69  53.54274    44.61937    43.04368    29.58712    47.76875    56.11357
70  54.24117    45.2113     43.55424    29.97786    48.52082    56.56269
71  55.10781    45.87016    44.19418    30.30342    49.17041    57.04574
72  55.81844    46.58728    44.70245    30.92939    50.00576    57.61847
73  56.53417    47.17022    45.19135    64.12819    50.76387    58.46774
74  56.99077    47.80587    45.81162    64.46482    51.44632    59.35406
75  57.70125    48.4632     46.53608    64.47179    52.09271    60.34232
76  58.40646    49.11251    47.44626    65.28538    52.77505    60.76057
77  59.20803    49.70755    48.0586     65.42728    53.3777     61.86707
78  59.71753    50.13534    48.76304    65.97044    54.06384    63.14102
79  60.58331    50.72049    49.47997    66.51449    54.7547     64.43312
80  61.03398    51.41927    50.11546    67.02634    55.4798     65.58254
81  61.80681    51.97609    50.69514    67.59518    55.96139    66.72086
82  62.48501    52.59973    51.31683    68.12712    56.93643    67.53484
83  63.36452    53.36562    51.73617    68.64816    57.6551     68.07806
84  64.31261    53.98405    52.21327    69.24711    58.23373    68.63623
85  65.24776    54.51552    52.77048    70.48085    58.97933    69.02074
86  66.17772    55.20282    53.22162    70.64199    59.76285    69.38057
87  67.08787    55.91391    53.7916     71.38781    60.25809    70.01195
88  68.01987    56.61301    54.46721    71.58064    61.31948    70.5335
89  68.92189    57.28238    55.16064    71.99983    62.18978    71.61938
90  69.79762    57.88332    55.85772    72.89091    63.02894    72.77907
91  69.86632    58.52047    56.78106    73.05919    63.78964    74.13258
92  70.60662    59.12164    57.49112    73.58095    64.54343    75.77073
93  71.63203    59.77399    58.20212    74.1192     65.36834    76.57243
94  72.18227    60.47282    58.77127    74.6143     65.83804    77.84715
95  72.97624    60.7739     59.41283    75.4809     66.61507    78.78102
96  73.75372    61.22352    59.84708    75.66663    67.44336    79.33527
97  74.66983    61.87689    60.49374    76.09998    68.30974    79.86294
98  75.85329    62.58495    60.7886     76.67287    69.23421    80.51763
99  76.38837    63.32424    61.5629     77.20351    70.00735    80.91219
100 77.38139    64.07433    62.21648    77.95189    70.7836     81.57964  
101 78.25631    64.82328    62.74316    78.21231    71.2177     82.16656  
102 79.19827    65.50484    63.64724    78.89301    72.00792    83.12364
103 80.38764    66.23685    64.48991    79.32261    73.00548    84.00261
104 80.87278    66.95412    65.2793     79.95379    73.50331    85.22213
105 81.76581    67.70247    65.82581    80.52102    74.28909    86.6621
106 83.02712    68.55701    66.62666    81.06393    75.11777    88.11059
107 83.48909    69.23235    67.35486    81.7409     75.9652 
108 84.82759    70.58522    68.15342    82.25188    76.8884 
109 85.28537    71.04559    68.92251    82.98396    77.83717    
110 86.70018    71.73407    69.51888    83.51862    78.45438    
111 87.35397    72.45837    70.31539    83.69946    79.32315    
112 88.69969    73.14394    70.9007     84.25947    80.39831    
113             73.92206    71.50578    85.10349    81.20853    
114             74.65082    72.20686    85.26869    81.95338    
115             75.32388    72.81664    86.07426    82.36201      
116             76.37313    73.52561    86.33713    83.16817    
117             76.85229    74.32013    86.85325    83.96463    
118             77.55033    75.04207    87.32344    84.8136 
119             78.19957    75.90256    87.93314    85.7303 
120             79.23823    76.41772    88.39268    86.46136      
121             79.57755    77.11913    88.96714    87.30937    
122             79.70834    78.01459                88.17579    
123             80.44374    78.76607                89.00109    
124             81.47443    79.56496            
125             81.80569    79.69939            
126             82.57823    80.52383            
127             83.38485    81.27236            
128             84.09743    81.94386            
129             84.78618    83.01913            
130             85.91491    83.52692            
131             86.18631    84.52093            
132             86.87262    85.26204            
133             88.0145     85.93992            
134             88.30018    86.70402            
135             89.08487    87.58891            
136                         88.27903    

Из приведенных выше данных значения варьируются от 7,3 (прибл.) До 89,08 (прибл.) Сверху вниз. Тем не менее, у меня есть некоторые данные в диапазоне от 7,3 до 89,09 (примерно) снизу вверх в другом листе файла Excel.

Теперь я хотел бы взять самый длинный вектор столбца (из выборочных данных это вектор столбца: 3), т.е. размером 136 * 1, и преобразовать другие векторы столбца (1,2,4,5 и 6)в размер столбца-вектора: 3 так, чтобы исходные значения (величины) оставались одинаковыми, а их позиции (значения в строках могут быть смещены). Между значениями (исходными величинами) мне нужно интерполировать, чтобы все векторы столбцов были одинаковой длины (136 * 1).

как векторы этого столбца, у меня есть несколько сотен.

ожидаемый результат представлен только для столбца: 1 со ссылкой на столбец: 3

No  1           3
1   7.68565     7.620156
2   8.247334    8.107751
3   8.861417    8.616113
4   9.522981    9.117843
5   **9.8125205**   9.621576
6   10.10206    10.2111
7   10.74194    10.70612
8   11.41614    11.23061
9   **11.751075**   11.81479
10  12.08601    12.3436
11  12.8509     12.81579
12  13.79793    13.39124
13  **14.10064**    13.94058
14  14.40335    14.35261
15  14.96397    14.86438
 16 15.49457    15.30651
17  **15.77805**    15.82241
18  16.06153    16.33324
19  16.61133    16.8808
20  17.24876    17.40481
21  17.8686     17.88455 
22  18.49424    18.38069
23  **18.77967**    18.79004
24  19.0651     19.25296
25  19.73842    19.68497
26  20.47123    20.25114   
27  **20.81728**    20.8394
28  21.16333    21.36803    
29  21.83083    21.92369
30  22.50095    22.49119
31  23.27895    23.09582
32  23.86791    23.71597
33  24.42128    24.22622 
34  **24.724375**   24.76757
35  25.02747    25.30781
36  25.64392    25.86998 
37  26.15457    26.34333
38  26.78083    26.69165
39  27.39095    27.12134
40  **27.718205**   27.578
41  28.04546    28.16382
42  28.68887    28.58075
43  29.45707    29.14229
44  **29.748265**   29.71523
45  30.03946    30.28881
46  30.71511    30.94186
47  31.42378    31.63391
48  32.50335    32.19883
49  **32.813315**   32.72147
50  33.12328    33.14864
51  33.71293    33.60807
52  34.22313    34.09723
53  34.84822    34.57659
54  **35.18025**    35.03618
55  35.51228    35.46371
56  **35.81451**    35.98615
57  36.11674    36.51719
58  36.80722    37.09313
59  37.60966    37.17476
60  **37.92991**    37.90604
61  38.25016    38.5283
62  38.95744    39.16806
63  39.66163    39.80176
64  40.37425    40.39578
65  41.23707    41.03402
66  41.82558    41.44307
67  42.55081    42.17046
68  **42.97494**    42.54818
69  43.39907    43.04368
70  **43.724815**   43.55424
71  44.05056    44.19418  
72  44.78049    44.70245
73  45.43282    45.19135
74  **45.81082**    45.81162
75  46.18882    46.53608
76  46.90982    47.44626  
77  47.56264    48.0586
78  48.10035    48.76304
79  49.01068    49.47997    
80  49.76271    50.11546
81  50.53434    50.69514
82  51.67479    51.31683
83  **51.941485**   51.73617
84  52.20818    52.21327
85  52.84818    52.77048
86  53.54274    53.22162
87  **53.891955**   53.7916
88  54.24117    54.46721  
89  55.10781    55.16064  
90  55.81844    55.85772
91  56.53417    56.78106
92  56.99077    57.49112
93  57.70125    58.20212
94  58.40646    58.77127
95  59.20803    59.41283
96  59.71753    59.84708
97  60.58331    60.49374
98  61.03398    60.7886    
99  61.80681    61.5629
100 62.48501    62.21648
101 **62.924765**   62.74316
102 63.36452    63.64724
103 64.31261    64.48991
104 65.24776    65.2793
105 **65.71274**    65.82581
106 66.17772    66.62666
107 67.08787    67.35486
108 68.01987    68.15342  
109 68.92189    68.92251
110 69.79762    69.51888
111 69.86632    70.31539  
112 70.60662    70.9007
113 71.63203    71.50578
114 72.18227    72.20686
115 72.97624    72.81664
116 73.75372    73.52561    
117 74.66983    74.32013  
118 75.85329    75.04207 
119 76.38837    75.90256
120 **76.88488**    76.41772
121 77.38139    77.11913
122 78.25631    78.01459
123 **78.72729**    78.76607
124 79.19827    79.56496
125 **79.792955**   79.69939
126 80.38764    80.52383
127 80.87278    81.27236  
128 81.76581    81.94386
129 83.02712    83.01913
130 83.48909    83.52692
131 84.82759    84.52093    
132 85.28537    85.26204
133 85.992775   85.93992     
134 86.70018    86.70402
135 87.35397    87.58891
136 88.69969    88.27903

ожидаемое интерполированноезначения в столбце: 1 представлены в двойных звездочках. здесь интерполяция выполняется путем усреднения i-1-й и i + 1-й ячеек для i-й ячейки (просто линейная интерполяция)

, основная цель которой заключается в выполнении кластеризации. поскольку векторы столбцов / векторы строк неравной длины не могут быть использованы для кластеризации

, есть ли какой-нибудь код для этого?

или мы можем рассчитать расстояние с помощью метода DTW (динамическая деформация времени)или любой другой метод с векторными столбцами, имеющими неодинаковую длину (как показано в примере набора данных) и выполняющими кластеризацию ??

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...