@@ -218,24 +218,76 @@ def test_filter(self):
218218 self .assertEqual (result3 , expected3 )
219219
220220 def test_gather (self ):
221- df = rf .DataFrame ({"foo" : [1 , 2 ], "bar" : [3 , 4 ], "baz" : [4 , 5 ]})
221+ df = rf .DataFrame (
222+ {
223+ "foo" : [1 , 2 , 1 , 2 ],
224+ "bar" : ["A" , "B" , "C" , "D" ],
225+ "baz" : ["!" , "@" , "#" , "$" ],
226+ "jaz" : range (4 ),
227+ }
228+ )
222229 result1 = df .gather ()
223230 result2 = df .gather (["foo" , "bar" ], into = ("var" , "val" ))
231+ result3 = df .gather (beside = ["foo" , "bar" ])
224232 expected1 = rf .DataFrame (
225233 {
226- "variable" : ["foo" , "foo" , "bar" , "bar" , "baz" , "baz" ],
227- "value" : [1 , 2 , 3 , 4 , 4 , 5 ],
234+ "variable" : [
235+ "foo" ,
236+ "foo" ,
237+ "foo" ,
238+ "foo" ,
239+ "bar" ,
240+ "bar" ,
241+ "bar" ,
242+ "bar" ,
243+ "baz" ,
244+ "baz" ,
245+ "baz" ,
246+ "baz" ,
247+ "jaz" ,
248+ "jaz" ,
249+ "jaz" ,
250+ "jaz" ,
251+ ],
252+ "value" : [
253+ 1 ,
254+ 2 ,
255+ 1 ,
256+ 2 ,
257+ "A" ,
258+ "B" ,
259+ "C" ,
260+ "D" ,
261+ "!" ,
262+ "@" ,
263+ "#" ,
264+ "$" ,
265+ 0 ,
266+ 1 ,
267+ 2 ,
268+ 3 ,
269+ ],
228270 }
229271 )
230272 expected2 = rf .DataFrame (
231273 {
232- "baz" : [4 , 5 , 4 , 5 ],
233- "var" : ["foo" , "foo" , "bar" , "bar" ],
234- "val" : [1 , 2 , 3 , 4 ],
274+ "baz" : ["!" , "@" , "#" , "$" , "!" , "@" , "#" , "$" ],
275+ "jaz" : [0 , 1 , 2 , 3 , 0 , 1 , 2 , 3 ],
276+ "var" : ["foo" , "foo" , "foo" , "foo" , "bar" , "bar" , "bar" , "bar" ],
277+ "val" : [1 , 2 , 1 , 2 , "A" , "B" , "C" , "D" ],
278+ }
279+ )
280+ expected3 = rf .DataFrame (
281+ {
282+ "foo" : [1 , 2 , 1 , 2 , 1 , 2 , 1 , 2 ],
283+ "bar" : ["A" , "B" , "C" , "D" , "A" , "B" , "C" , "D" ],
284+ "variable" : ["baz" , "baz" , "baz" , "baz" , "jaz" , "jaz" , "jaz" , "jaz" ],
285+ "value" : ["!" , "@" , "#" , "$" , 0 , 1 , 2 , 3 ],
235286 }
236287 )
237288 self .assertEqual (result1 , expected1 )
238289 self .assertEqual (result2 , expected2 )
290+ self .assertEqual (result3 , expected3 )
239291
240292 def test_group (self ):
241293 df = rf .DataFrame (
0 commit comments