06fb969fa56c7406cd8a5606beab21ccf7bba988
[pspp] / tests / language / stats / flip.at
1 dnl PSPP - a program for statistical analysis.
2 dnl Copyright (C) 2017 Free Software Foundation, Inc.
3 dnl 
4 dnl This program is free software: you can redistribute it and/or modify
5 dnl it under the terms of the GNU General Public License as published by
6 dnl the Free Software Foundation, either version 3 of the License, or
7 dnl (at your option) any later version.
8 dnl 
9 dnl This program is distributed in the hope that it will be useful,
10 dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
11 dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12 dnl GNU General Public License for more details.
13 dnl 
14 dnl You should have received a copy of the GNU General Public License
15 dnl along with this program.  If not, see <http://www.gnu.org/licenses/>.
16 dnl
17 AT_BANNER([FLIP command])
18
19 AT_SETUP([FLIP with NEWNAMES])
20 AT_DATA([flip.sps], [dnl
21 data list notable /N 1 (a) a b c d 2-9.
22 list.
23 begin data.
24 v 1 2 3 4 5
25 w 6 7 8 910
26 x1112131415
27 y1617181920
28 z2122232425
29 end data.
30 temporary.
31 compute e = a.
32 flip newnames=n.
33 list.
34 flip.
35 list.
36 ])
37 AT_CHECK([pspp -O format=csv flip.sps], [0], [dnl
38 Table: Data List
39 N,a,b,c,d
40 v,1,2,3,4
41 w,6,7,8,9
42 x,11,12,13,14
43 y,16,17,18,19
44 z,21,22,23,24
45
46 flip.sps:12: warning: FLIP: FLIP ignores TEMPORARY.  Temporary transformations will be made permanent.
47
48 Table: Data List
49 CASE_LBL,v,w,x,y,z
50 a       ,1.00,6.00,11.00,16.00,21.00
51 b       ,2.00,7.00,12.00,17.00,22.00
52 c       ,3.00,8.00,13.00,18.00,23.00
53 d       ,4.00,9.00,14.00,19.00,24.00
54 e       ,1.00,6.00,11.00,16.00,21.00
55
56 Table: Data List
57 CASE_LBL,a,b,c,d,e
58 v       ,1.00,2.00,3.00,4.00,1.00
59 w       ,6.00,7.00,8.00,9.00,6.00
60 x       ,11.00,12.00,13.00,14.00,11.00
61 y       ,16.00,17.00,18.00,19.00,16.00
62 z       ,21.00,22.00,23.00,24.00,21.00
63 ])
64 AT_CLEANUP
65
66 AT_SETUP([FLIP without NEWNAMES])
67 AT_DATA([flip.sps], [dnl
68 data list list notable /v1 to v10.
69 format all(f2).
70 begin data.
71 1 2 3 4 5 6 7 8 9 10
72 4 5 6 7 8 9 10 11 12 13
73 end data.
74
75 list.
76
77 flip.
78 list. 
79 ])
80 AT_CHECK([pspp -O format=csv flip.sps], [0], [dnl
81 Table: Data List
82 v1,v2,v3,v4,v5,v6,v7,v8,v9,v10
83 1,2,3,4,5,6,7,8,9,10
84 4,5,6,7,8,9,10,11,12,13
85
86 Table: Data List
87 CASE_LBL,VAR000,VAR001
88 v1      ,1.00,4.00
89 v2      ,2.00,5.00
90 v3      ,3.00,6.00
91 v4      ,4.00,7.00
92 v5      ,5.00,8.00
93 v6      ,6.00,9.00
94 v7      ,7.00,10.00
95 v8      ,8.00,11.00
96 v9      ,9.00,12.00
97 v10     ,10.00,13.00
98 ])
99 AT_CLEANUP
100
101
102
103
104 AT_SETUP([FLIP badly formed])
105
106 AT_DATA([flip.sps], [dnl
107 data list notable /N 1 (a) a b c d 2-9.
108
109 flip newnames=n.
110 list.
111 flip.
112 ])
113
114 AT_CHECK([pspp -O format=csv flip.sps], [1], [ignore])
115
116 AT_CLEANUP
117
118
119
120 AT_SETUP([FLIP with invalid variable names])
121
122 AT_DATA([flip.sps], [dnl
123 data list notable list /N (a3) a b c d *.
124 begin data.
125 ""   1  2  3  4
126 BY   1  2  3  4
127 end data.
128
129 flip newnames=n.
130
131 list.
132 ])
133
134 AT_CHECK([pspp -O format=csv flip.sps], [0], [dnl
135 Table: Data List
136 CASE_LBL,v,BY1
137 a       ,1.00,1.00
138 b       ,2.00,2.00
139 c       ,3.00,3.00
140 d       ,4.00,4.00
141 ])
142
143 AT_CLEANUP