@@ -55,6 +55,39 @@ df.select { name.all() }
5555df.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