Как разбить данные одного столбца на несколько равных n столбцов в Excel или R? - PullRequest
0 голосов
/ 05 марта 2019

У меня по столбцу 500 значений.Я хочу разделить его на 5 столбцов по 100 значений в каждом.

Sample Input
1
2
3
4
...
50

Вывод:

Column 1
1...100
Column 2
101..200
column 3
201..300
column 4
301..400
column 5
401..500

Есть ли какой-нибудь способ в Excel или R сделать это проще?Мой формат файла - CSV.

Ответы [ 2 ]

0 голосов
/ 05 марта 2019

С данными в столбце A , в B1 введите:

=INDEX($A:$A,ROWS($1:1)+(COLUMNS($A:A)-1)*100)

и скопируйте вниз и поперек.

enter image description here

РЕДАКТИРОВАТЬ # 1:

Если ваши данные начинаются с A2 , а не A1 ,используйте это:

=INDEX($A$2:$A$99999,ROWS($1:1)+(COLUMNS($A:A)-1)*100)
0 голосов
/ 05 марта 2019

Если ваши входные данные находятся в столбце A, а вывод начинается со столбца B, попробуйте следующий макрос.Назначьте его кнопке для многократного использования.

Sub SplitInto100CellsPerColumn()
  Dim X As Long, LastRow As Long, vArrIn As Variant, vArrOut As Variant
  LastRow = Cells(Rows.Count, "A").End(xlUp).Row
  vArrIn = Range("A1:A" & LastRow)
  ReDim vArrOut(1 To 100, 1 To Int(LastRow / 100) + 1)
  For X = 0 To LastRow - 1
    vArrOut(1 + (X Mod 100), 1 + Int(X / 100)) = vArrIn(X + 1, 1)
  Next
  Range("B1").Resize(100, UBound(vArrOut, 2)) = vArrOut
End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...