@@ -444,7 +444,7 @@ def as_matrix(self):
444444 #----------------------------------------------------------------------
445445 # Getting and setting elements
446446
447- def get_value (self , * args ):
447+ def get_value (self , * args , ** kwargs ):
448448 """
449449 Quickly retrieve single value at (item, major, minor) location
450450
@@ -453,6 +453,7 @@ def get_value(self, *args):
453453 item : item label (panel item)
454454 major : major axis label (panel item row)
455455 minor : minor axis label (panel item column)
456+ takeable : interpret the passed labels as indexers, default False
456457
457458 Returns
458459 -------
@@ -466,12 +467,16 @@ def get_value(self, *args):
466467 raise TypeError ('There must be an argument for each axis, you gave'
467468 ' {0} args, but {1} are required' .format (nargs ,
468469 nreq ))
470+ takeable = kwargs .get ('takeable' )
469471
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 )
473478
474- def set_value (self , * args ):
479+ def set_value (self , * args , ** kwargs ):
475480 """
476481 Quickly set single value at (item, major, minor) location
477482
@@ -481,6 +486,7 @@ def set_value(self, *args):
481486 major : major axis label (panel item row)
482487 minor : minor axis label (panel item column)
483488 value : scalar
489+ takeable : interpret the passed labels as indexers, default False
484490
485491 Returns
486492 -------
@@ -496,10 +502,15 @@ def set_value(self, *args):
496502 raise TypeError ('There must be an argument for each axis plus the '
497503 'value provided, you gave {0} args, but {1} are '
498504 'required' .format (nargs , nreq ))
505+ takeable = kwargs .get ('takeable' )
499506
500507 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 )
503514 return self
504515 except KeyError :
505516 axes = self ._expand_axes (args )
0 commit comments