@@ -444,7 +444,7 @@ def as_matrix(self):
444
444
#----------------------------------------------------------------------
445
445
# Getting and setting elements
446
446
447
- def get_value (self , * args ):
447
+ def get_value (self , * args , ** kwargs ):
448
448
"""
449
449
Quickly retrieve single value at (item, major, minor) location
450
450
@@ -453,6 +453,7 @@ def get_value(self, *args):
453
453
item : item label (panel item)
454
454
major : major axis label (panel item row)
455
455
minor : minor axis label (panel item column)
456
+ takeable : interpret the passed labels as indexers, default False
456
457
457
458
Returns
458
459
-------
@@ -466,12 +467,16 @@ def get_value(self, *args):
466
467
raise TypeError ('There must be an argument for each axis, you gave'
467
468
' {0} args, but {1} are required' .format (nargs ,
468
469
nreq ))
470
+ takeable = kwargs .get ('takeable' )
469
471
470
- # hm, two layers to the onion
471
- frame = self ._get_item_cache (args [0 ])
472
- return frame .get_value (* args [1 :])
472
+ if takeable is True :
473
+ lower = self ._iget_item_cache (args [0 ])
474
+ else :
475
+ lower = self ._get_item_cache (args [0 ])
476
+
477
+ return lower .get_value (* args [1 :], takeable = takeable )
473
478
474
- def set_value (self , * args ):
479
+ def set_value (self , * args , ** kwargs ):
475
480
"""
476
481
Quickly set single value at (item, major, minor) location
477
482
@@ -481,6 +486,7 @@ def set_value(self, *args):
481
486
major : major axis label (panel item row)
482
487
minor : minor axis label (panel item column)
483
488
value : scalar
489
+ takeable : interpret the passed labels as indexers, default False
484
490
485
491
Returns
486
492
-------
@@ -496,10 +502,15 @@ def set_value(self, *args):
496
502
raise TypeError ('There must be an argument for each axis plus the '
497
503
'value provided, you gave {0} args, but {1} are '
498
504
'required' .format (nargs , nreq ))
505
+ takeable = kwargs .get ('takeable' )
499
506
500
507
try :
501
- frame = self ._get_item_cache (args [0 ])
502
- frame .set_value (* args [1 :])
508
+ if takeable is True :
509
+ lower = self ._iget_item_cache (args [0 ])
510
+ else :
511
+ lower = self ._get_item_cache (args [0 ])
512
+
513
+ lower .set_value (* args [1 :], takeable = takeable )
503
514
return self
504
515
except KeyError :
505
516
axes = self ._expand_axes (args )
0 commit comments