本文整理汇总了Python中holoviews.Columns.groupby方法的典型用法代码示例。如果您正苦于以下问题:Python Columns.groupby方法的具体用法?Python Columns.groupby怎么用?Python Columns.groupby使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类holoviews.Columns
的用法示例。
在下文中一共展示了Columns.groupby方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_columns_groupby
# 需要导入模块: from holoviews import Columns [as 别名]
# 或者: from holoviews.Columns import groupby [as 别名]
def test_columns_groupby(self):
columns = Columns(self.column_data, kdims=self.kdims,
vdims=self.vdims)
cols = self.kdims + self.vdims
group1 = pd.DataFrame(self.column_data[:2], columns=cols)
group2 = pd.DataFrame(self.column_data[2:], columns=cols)
grouped = HoloMap({'M': Columns(group1, kdims=['Age'], vdims=self.vdims),
'F': Columns(group2, kdims=['Age'], vdims=self.vdims)},
kdims=['Gender'])
self.assertEqual(columns.groupby(['Gender']), grouped)
示例2: HeterogeneousColumnTypes
# 需要导入模块: from holoviews import Columns [as 别名]
# 或者: from holoviews.Columns import groupby [as 别名]
#.........这里部分代码省略.........
def test_columns_reduce_ht(self):
reduced = Columns({'Age':self.age, 'Weight':self.weight, 'Height':self.height},
kdims=self.kdims[1:], vdims=self.vdims)
self.assertEqual(self.table.reduce(['Gender'], np.mean), reduced)
def test_columns_1D_reduce_ht(self):
self.assertEqual(self.columns_ht.reduce('x', np.mean), np.float64(0.5))
def test_columns_2D_reduce_ht(self):
reduced = Columns({'Weight':[14.333333333333334], 'Height':[0.73333333333333339]},
kdims=[], vdims=self.vdims)
self.assertEqual(self.table.reduce(function=np.mean), reduced)
def test_columns_2D_partial_reduce_ht(self):
columns = Columns({'x':self.xs, 'y':self.ys, 'z':self.zs},
kdims=['x', 'y'], vdims=['z'])
reduced = Columns({'x':self.xs, 'z':self.zs},
kdims=['x'], vdims=['z'])
self.assertEqual(columns.reduce(['y'], np.mean), reduced)
def test_column_aggregate_ht(self):
aggregated = Columns({'Gender':['M','F'], 'Weight':[16.5,10], 'Height':[0.7,0.8]},
kdims=self.kdims[:1], vdims=self.vdims)
self.compare_columns(self.table.aggregate(['Gender'], np.mean), aggregated)
def test_columns_2D_aggregate_partial_ht(self):
columns = Columns({'x':self.xs, 'y':self.ys, 'z':self.zs},
kdims=['x', 'y'], vdims=['z'])
reduced = Columns({'x':self.xs, 'z':self.zs},
kdims=['x'], vdims=['z'])
self.assertEqual(columns.aggregate(['x'], np.mean), reduced)
def test_columns_groupby(self):
group1 = {'Age':[10,16], 'Weight':[15,18], 'Height':[0.8,0.6]}
group2 = {'Age':[12], 'Weight':[10], 'Height':[0.8]}
with sorted_context(False):
grouped = HoloMap([('M', Columns(group1, kdims=['Age'], vdims=self.vdims)),
('F', Columns(group2, kdims=['Age'], vdims=self.vdims))],
kdims=['Gender'])
self.assertEqual(self.table.groupby(['Gender']), grouped)
def test_columns_add_dimensions_value_ht(self):
table = self.columns_ht.add_dimension('z', 1, 0)
self.assertEqual(table.kdims[1], 'z')
self.compare_arrays(table.dimension_values('z'), np.zeros(len(table)))
def test_columns_add_dimensions_values_ht(self):
table = self.columns_ht.add_dimension('z', 1, range(1,12))
self.assertEqual(table.kdims[1], 'z')
self.compare_arrays(table.dimension_values('z'), np.array(list(range(1,12))))
# Indexing
def test_columns_index_row_gender_female(self):
indexed = Columns({'Gender':['F'],'Age':[12],
'Weight':[10], 'Height':[0.8]},
kdims=self.kdims, vdims=self.vdims)
row = self.table['F',:]
self.assertEquals(row, indexed)
def test_columns_index_rows_gender_male(self):
row = self.table['M',:]
indexed = Columns({'Gender':['M','M'],'Age':[10,16],
'Weight':[15,18], 'Height':[0.8,0.6]},
示例3: GridColumnsTest
# 需要导入模块: from holoviews import Columns [as 别名]
# 或者: from holoviews.Columns import groupby [as 别名]
class GridColumnsTest(HomogeneousColumnTypes, ComparisonTestCase):
"""
Test of the NdColumns interface (mostly for backwards compatibility)
"""
def setUp(self):
self.restore_datatype = Columns.datatype
Columns.datatype = ['grid']
self.data_instance_type = dict
self.init_data()
def init_data(self):
self.xs = range(11)
self.xs_2 = [el**2 for el in self.xs]
self.y_ints = [i*2 for i in range(11)]
self.columns_hm = Columns((self.xs, self.y_ints),
kdims=['x'], vdims=['y'])
def test_columns_array_init_hm(self):
"Tests support for arrays (homogeneous)"
exception = "None of the available storage backends "\
"were able to support the supplied data format."
with self.assertRaisesRegexp(Exception, exception):
Columns(np.column_stack([self.xs, self.xs_2]),
kdims=['x'], vdims=['x2'])
def test_columns_dataframe_init_hm(self):
"Tests support for homogeneous DataFrames"
if pd is None:
raise SkipTest("Pandas not available")
exception = "None of the available storage backends "\
"were able to support the supplied data format."
with self.assertRaisesRegexp(Exception, exception):
Columns(pd.DataFrame({'x':self.xs, 'x2':self.xs_2}),
kdims=['x'], vdims=['x2'])
def test_columns_ndelement_init_hm(self):
"Tests support for homogeneous NdElement (backwards compatibility)"
exception = "None of the available storage backends "\
"were able to support the supplied data format."
with self.assertRaisesRegexp(Exception, exception):
Columns(NdElement(zip(self.xs, self.xs_2),
kdims=['x'], vdims=['x2']))
def test_columns_2D_aggregate_partial_hm(self):
array = np.random.rand(11, 11)
columns = Columns({'x':self.xs, 'y':self.y_ints, 'z': array},
kdims=['x', 'y'], vdims=['z'])
self.assertEqual(columns.aggregate(['x'], np.mean),
Columns({'x':self.xs, 'z': np.mean(array, axis=1)},
kdims=['x'], vdims=['z']))
def test_columns_2D_reduce_hm(self):
array = np.random.rand(11, 11)
columns = Columns({'x':self.xs, 'y':self.y_ints, 'z': array},
kdims=['x', 'y'], vdims=['z'])
self.assertEqual(np.array(columns.reduce(['x', 'y'], np.mean)),
np.mean(array))
def test_columns_add_dimensions_value_hm(self):
with self.assertRaisesRegexp(Exception, 'Cannot add key dimension to a dense representation.'):
self.columns_hm.add_dimension('z', 1, 0)
def test_columns_add_dimensions_values_hm(self):
table = self.columns_hm.add_dimension('z', 1, range(1,12), vdim=True)
self.assertEqual(table.vdims[1], 'z')
self.compare_arrays(table.dimension_values('z'), np.array(list(range(1,12))))
def test_columns_sort_vdim_hm(self):
exception = ('Compressed format cannot be sorted, either instantiate '
'in the desired order or use the expanded format.')
with self.assertRaisesRegexp(Exception, exception):
self.columns_hm.sort('y')
def test_columns_groupby(self):
self.assertEqual(self.columns_hm.groupby('x').keys(), list(self.xs))