@@ -115,7 +115,7 @@ def __getitem__(self, what):
115
115
from ibis .expr .types .logical import BooleanValue
116
116
117
117
if isinstance (what , (str , int )):
118
- return self . get_column ( what )
118
+ return ops . TableColumn ( self , what ). to_expr ( )
119
119
120
120
if isinstance (what , slice ):
121
121
step = what .step
@@ -154,7 +154,7 @@ def __len__(self):
154
154
155
155
def __getattr__ (self , key ):
156
156
with contextlib .suppress (com .IbisTypeError ):
157
- return self . get_column ( key )
157
+ return ops . TableColumn ( self , key ). to_expr ( )
158
158
159
159
# Handle deprecated `groupby` and `sort_by` methods
160
160
if key == "groupby" :
@@ -210,33 +210,39 @@ def _ensure_expr(self, expr):
210
210
else :
211
211
return expr
212
212
213
+ @util .deprecated (
214
+ version = "5.0" , instead = "use a list comprehension and attribute/getitem syntax"
215
+ )
213
216
def get_columns (self , iterable : Iterable [str ]) -> list [Column ]:
214
217
"""Get multiple columns from the table.
215
218
219
+ Parameters
220
+ ----------
221
+ iterable
222
+ An iterable of column names
223
+
216
224
Examples
217
225
--------
218
226
>>> import ibis
219
- >>> table = ibis.table(
220
- ... [
221
- ... ('a', 'int64'),
222
- ... ('b', 'string'),
223
- ... ('c', 'timestamp'),
224
- ... ('d', 'float'),
225
- ... ],
226
- ... name='t'
227
- ... )
227
+ >>> table = ibis.table(dict(a='int64', b='string', c='timestamp', d='float'))
228
228
>>> a, b, c = table.get_columns(['a', 'b', 'c'])
229
229
230
230
Returns
231
231
-------
232
232
list[ir.Column]
233
233
List of column expressions
234
234
"""
235
- return [ self .get_column ( x ) for x in iterable ]
235
+ return list ( map ( self .get_column , iterable ))
236
236
237
+ @util .deprecated (version = "5.0" , instead = "use t.<name> or t[name]" )
237
238
def get_column (self , name : str ) -> Column :
238
239
"""Get a reference to a single column from the table.
239
240
241
+ Parameters
242
+ ----------
243
+ name
244
+ A column name
245
+
240
246
Returns
241
247
-------
242
248
Column
0 commit comments