Skip to content

Commit 2ee6a63

Browse files
committed
updated docs for kproperties in columns selection dsl
1 parent 769f1f9 commit 2ee6a63

File tree

2 files changed

+51
-14
lines changed

2 files changed

+51
-14
lines changed

core/src/test/kotlin/org/jetbrains/kotlinx/dataframe/samples/api/Access.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -707,8 +707,9 @@ class Access : TestBase() {
707707
}
708708

709709
@Test
710-
fun columnSelectors_kProperties() {
710+
fun columnSelectors_kproperties() {
711711
// SampleStart
712+
// by column name
712713
df.select { it[Person::name] }
713714
df.select { (Person::name)() }
714715
df.select { col(Person::name) }

docs/StardustDocs/topics/ColumnSelectors.md

Lines changed: 49 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,39 @@ df.select { name.all() }
5555
df.select { name.allDfs() }
5656
```
5757

58+
</tab>
59+
<tab title="Strings">
60+
61+
```kotlin
62+
// by column name
63+
df.select { it["name"] }
64+
65+
// by column path
66+
df.select { it["name"]["firstName"] }
67+
df.select { "name"["firstName"] }
68+
69+
// with a new name
70+
df.select { "name" named "Full Name" }
71+
72+
// converted
73+
df.select { "name"["firstName"]<String>().map { it.uppercase() } }
74+
75+
// column arithmetics
76+
df.select { 2021 - "age"<Int>() }
77+
78+
// two columns
79+
df.select { "name" and "age" }
80+
81+
// by range of names
82+
df.select { "name".."age" }
83+
84+
// all children of ColumnGroup
85+
df.select { "name".all() }
86+
87+
// dfs traversal of all children columns
88+
df.select { "name".allDfs() }
89+
```
90+
5891
</tab>
5992
<tab title="Accessors">
6093

@@ -92,39 +125,42 @@ df.select { name.allDfs() }
92125
```
93126

94127
</tab>
95-
<tab title="Strings">
128+
<tab title="KProperties">
96129

97130
```kotlin
98131
// by column name
99-
df.select { it["name"] }
132+
df.select { it[Person::name] }
133+
df.select { (Person::name)() }
134+
df.select { col(Person::name) }
100135

101136
// by column path
102-
df.select { it["name"]["firstName"] }
103-
df.select { "name"["firstName"] }
137+
df.select { it[Person::name][Name::firstName] }
138+
df.select { Person::name[Name::firstName] }
104139

105140
// with a new name
106-
df.select { "name" named "Full Name" }
141+
df.select { Person::name named "Full Name" }
107142

108143
// converted
109-
df.select { "name"["firstName"]<String>().map { it.uppercase() } }
144+
df.select { Person::name[Name::firstName].map { it.lowercase() } }
110145

111146
// column arithmetics
112-
df.select { 2021 - "age"<Int>() }
147+
df.select { 2021 - (Person::age)() }
113148

114149
// two columns
115-
df.select { "name" and "age" }
150+
df.select { Person::name and Person::age }
116151

117-
// by range of names
118-
df.select { "name".."age" }
152+
// range of columns
153+
df.select { Person::name..Person::age }
119154

120155
// all children of ColumnGroup
121-
df.select { "name".all() }
156+
df.select { Person::name.all() }
122157

123158
// dfs traversal of all children columns
124-
df.select { "name".allDfs() }
159+
df.select { Person::name.allDfs() }
125160
```
126161

127-
</tab></tabs>
162+
</tab>
163+
</tabs>
128164
<!---END-->
129165

130166
**Select columns by column index:**

0 commit comments

Comments
 (0)