Прочесть файл ASCII (значения каждой переменной собраны в 5 строк шириной в 10 колонок)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 | * Размещено в новостной группе SPSS. Автор: rlevesque@videotron.ca, 17.9.2000. * Допустим, имеется 8 переменных, и каждая из них имеет 50 наблюдений. * Но эти наблюдения расположены в 5 строках, по 10 столбцов в каждой. * Задача - переформатировать данные по каждой из 8 переменных в одну колонку. * Эта часть программы создаёт пример файла данных того же формата, что имеется у автора вопроса. INPUT PROGRAM. * Этот вектор будет формировать 10 столбцов, о которых говорилось выше. VECTOR c(10F8.0). LOOP #vars=1 TO 8. LOOP #rows=1 TO 5. LOOP #cols=1 TO 10. COMPUTE c(#cols)=#vars. END LOOP. END CASE. END LOOP. END LOOP. END FILE. END INPUT PROGRAM. LIST. *Сначала сохраним эти данные в табулированном файле. SAVE TRANSLATE OUTFILE='C:\\TEMP\\raw_data.dat' /TYPE=TAB /MAP /REPLACE. * Теперь прочтём файл с табуляцией в SPSS. NEW FILE. INPUT PROGRAM. VECTOR DATA(50). * Если вы будете запускать этот синтаксис более одного раза в течение сеанса SPSS, закомментируйте следующую строко после однократного исполнения. FILE HANDLE rawdata /NAME='C:\\TEMP\\raw_data.dat'. DATA LIST FILE=rawdata FREE (TAB) /DATA1 TO DATA50. END INPUT PROGRAM. *Да... транспонирование - часть этого решения ;-). FLIP. *Убираем лишнее. MATCH FILES FILE=* /DROP=case_lbl. |
Related pages
...