Skip to content

Commit 4878ce3

Browse files
author
Hernán Morales Durand
committed
Add drop column method and test.
Add test for shuffling a data frame
1 parent 56d9923 commit 4878ce3

2 files changed

Lines changed: 35 additions & 7 deletions

File tree

src/DataFrame-Tests/DataFrameTest.class.st

Lines changed: 22 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -922,6 +922,19 @@ DataFrameTest >> testColumns [
922922
self assert: df columns equals: expectedCollection
923923
]
924924

925+
{ #category : 'tests' }
926+
DataFrameTest >> testColumnsAllBut [
927+
928+
| expectedDataFrame |
929+
expectedDataFrame := DataFrame withRows: #( #( 'Barcelona' 1.609 ) #( 'Dubai' 2.789 ) #( 'London' 8.788 ) ).
930+
expectedDataFrame rowNames: #( 'A' 'B' 'C' ).
931+
expectedDataFrame columnNames: #( 'City' 'Population').
932+
933+
self
934+
assert: (df columnsAllBut: #(BeenThere))
935+
equals: expectedDataFrame
936+
]
937+
925938
{ #category : 'tests' }
926939
DataFrameTest >> testColumnsAt [
927940

@@ -5171,22 +5184,24 @@ DataFrameTest >> testShuffledWithSeed [
51715184

51725185
| expected |
51735186

5174-
"df = A Barcelona B Dubai C London"
51755187
expected := DataFrame withRows: #(
51765188
('Barcelona' 1.609 true)
51775189
('London' 8.788 false)
51785190
('Dubai' 2.789 true)).
5191+
expected rowNames: #( 'A' 'C' 'B').
5192+
expected columnNames: #( 'City' 'Population' 'BeenThere' ).
51795193

51805194
self assert: (df shuffleWithSeed: 1) equals: expected.
5181-
5182-
self assert: (df shuffleWithSeed: 2) equals: expected.
51835195

51845196
expected := DataFrame withRows: #(
5185-
('London' 8.788 false)
5186-
('Barcelona' 1.609 true)
5187-
('Dubai' 2.789 true)).
5197+
('Dubai' 2.789 true)
5198+
('Barcelona' 1.609 true)
5199+
('London' 8.788 false) ).
5200+
expected rowNames: #('B' 'A' 'C').
5201+
expected columnNames: #( 'City' 'Population' 'BeenThere' ).
5202+
self assert: (df shuffleWithSeed: 2) equals: expected.
51885203

5189-
self assert: (df shuffleWithSeed: 3) equals: expected.
5204+
51905205
]
51915206

51925207
{ #category : 'tests' }

src/DataFrame/DataFrame.class.st

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -851,6 +851,13 @@ DataFrame >> columns: anArrayOfColumnNames put: anArrayOfArrays [
851851
self column: name put: array ]
852852
]
853853

854+
{ #category : 'accessing' }
855+
DataFrame >> columnsAllBut: aCollectionOfColumnNames [
856+
"Returns a <Collection> of except those present in aCollectionOfColumnNames"
857+
858+
^ self columns: (self columnNames copyWithoutAll: aCollectionOfColumnNames)
859+
]
860+
854861
{ #category : 'accessing' }
855862
DataFrame >> columnsAt: anArrayOfNumbers [
856863
"Returns a collection of columns whose column indices are present in the array anArrayOfNumbers"
@@ -2441,6 +2448,12 @@ DataFrame >> shuffleWithSeed: aNumber [
24412448
^ self shuffleBy: (Random new seed: aNumber)
24422449
]
24432450

2451+
{ #category : 'accessing' }
2452+
DataFrame >> shuffled [
2453+
2454+
self shuffleBy: Random new
2455+
]
2456+
24442457
{ #category : 'accessing' }
24452458
DataFrame >> size [
24462459
"Returns the number of rows of a DataFrame"

0 commit comments

Comments
 (0)