本文整理汇总了Python中holoviews.Columns.closest方法的典型用法代码示例。如果您正苦于以下问题:Python Columns.closest方法的具体用法?Python Columns.closest怎么用?Python Columns.closest使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类holoviews.Columns
的用法示例。
在下文中一共展示了Columns.closest方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: ColumnsDFrameTest
# 需要导入模块: from holoviews import Columns [as 别名]
# 或者: from holoviews.Columns import closest [as 别名]
class ColumnsDFrameTest(ComparisonTestCase):
def setUp(self):
self.datatype = Columns.datatype
Columns.datatype = ['dataframe']
self.column_data = [('M',10, 15, 0.8), ('M',16, 18, 0.6),
('F',12, 10, 0.8)]
self.kdims = ['Gender', 'Age']
self.vdims = ['Weight', 'Height']
self.xs = range(11)
self.ys = np.linspace(0, 1, 11)
self.zs = np.sin(self.xs)
self.columns = Columns(pd.DataFrame({'x': self.xs, 'y': self.ys}),
kdims=['x'], vdims=['y'])
def tearDown(self):
Columns.datatype = self.datatype
def test_columns_range(self):
self.assertEqual(self.columns.range('y'), (0., 1.))
def test_columns_shape(self):
self.assertEqual(self.columns.shape, (11, 2))
def test_columns_closest(self):
closest = self.columns.closest([0.51, 1, 9.9])
self.assertEqual(closest, [1., 1., 10.])
def test_columns_sample(self):
samples = self.columns.sample([0, 5, 10]).dimension_values('y')
self.assertEqual(samples, np.array([0, 0.5, 1]))
def test_columns_df_construct(self):
self.assertTrue(isinstance(self.columns.data, pd.DataFrame))
def test_columns_tuple_list_construct(self):
columns = Columns(self.column_data, kdims=self.kdims,
vdims=self.vdims)
self.assertTrue(isinstance(self.columns.data, pd.DataFrame))
def test_columns_slice(self):
data = [('x', range(5, 9)), ('y', np.linspace(0.5, 0.8, 4))]
columns_slice = Columns(pd.DataFrame.from_items(data),
kdims=['x'], vdims=['y'])
self.assertEqual(self.columns[5:9], columns_slice)
def test_columns_index_row_gender(self):
columns = Columns(self.column_data, kdims=self.kdims,
vdims=self.vdims)
row = columns['F',:]
self.assertEquals(type(row), Columns)
self.compare_columns(row, Columns(self.column_data[2:],
kdims=self.kdims,
vdims=self.vdims))
def test_columns_index_rows_gender(self):
columns = Columns(self.column_data, kdims=self.kdims,
vdims=self.vdims)
row = columns['M',:]
self.assertEquals(type(row), Columns)
self.compare_columns(row, Columns(self.column_data[:2],
kdims=self.kdims,
vdims=self.vdims))
def test_columns_index_row_age(self):
columns = Columns(self.column_data, kdims=self.kdims,
vdims=self.vdims)
row = columns[:, 12]
self.assertEquals(type(row), Columns)
self.compare_columns(row, Columns(self.column_data[2:],
kdims=self.kdims,
vdims=self.vdims))
def test_columns_index_single_row(self):
columns = Columns(self.column_data, kdims=self.kdims,
vdims=self.vdims)
row = columns['F', 12]
self.assertEquals(type(row), Columns)
self.compare_columns(row, Columns(self.column_data[2:],
kdims=self.kdims,
vdims=self.vdims))
def test_columns_index_value1(self):
columns = Columns(self.column_data, kdims=self.kdims,
vdims=self.vdims)
self.assertEquals(columns['F', 12, 'Weight'], 10)
def test_columns_index_value2(self):
columns = Columns(self.column_data, kdims=self.kdims,
vdims=self.vdims)
self.assertEquals(columns['F', 12, 'Height'], 0.8)
def test_columns_sort_vdim(self):
columns = Columns(pd.DataFrame({'x': self.xs, 'y': -self.ys}),
kdims=['x'], vdims=['y'])
columns_sorted = Columns(pd.DataFrame({'x': self.xs[::-1], 'y': -self.ys[::-1]}),
kdims=['x'], vdims=['y'])
self.assertEqual(columns.sort('y'), columns_sorted)
def test_columns_sort_heterogeneous_string(self):
#.........这里部分代码省略.........
示例2: ColumnsNdElementTest
# 需要导入模块: from holoviews import Columns [as 别名]
# 或者: from holoviews.Columns import closest [as 别名]
class ColumnsNdElementTest(ComparisonTestCase):
"""
Test for the Chart baseclass methods.
"""
def setUp(self):
self.datatype = Columns.datatype
Columns.datatype = ['dictionary', 'array']
self.xs = range(11)
self.ys = np.linspace(0, 1, 11)
self.zs = np.sin(self.xs)
self.keys1 = [('M',10), ('M',16), ('F',12)]
self.values1 = [(15, 0.8), (18, 0.6), (10, 0.8)]
self.kdims = ['Gender', 'Age']
self.vdims = ['Weight', 'Height']
self.columns = Columns(dict(zip(self.xs, self.ys)),
kdims=['x'], vdims=['y'])
def tearDown(self):
Columns.datatype = self.datatype
def test_columns_sort_vdim(self):
columns = Columns(OrderedDict(zip(self.xs, -self.ys)),
kdims=['x'], vdims=['y'])
columns_sorted = Columns(OrderedDict(zip(self.xs[::-1], -self.ys[::-1])),
kdims=['x'], vdims=['y'])
self.assertEqual(columns.sort('y'), columns_sorted)
def test_columns_sort_heterogeneous_string(self):
columns = Columns(zip(self.keys1, self.values1),
kdims=self.kdims, vdims=self.vdims)
keys = [('F',12), ('M',10), ('M',16)]
values = [(10, 0.8), (15, 0.8), (18, 0.6)]
columns_sorted = Columns(zip(keys, values),
kdims=self.kdims, vdims=self.vdims)
self.assertEqual(columns.sort(), columns_sorted)
def test_columns_shape(self):
self.assertEqual(self.columns.shape, (11, 2))
def test_columns_range(self):
self.assertEqual(self.columns.range('y'), (0., 1.))
def test_columns_odict_construct(self):
columns = Columns(OrderedDict(zip(self.xs, self.ys)), kdims=['A'], vdims=['B'])
self.assertTrue(isinstance(columns.data, NdElement))
def test_columns_closest(self):
closest = self.columns.closest([0.51, 1, 9.9])
self.assertEqual(closest, [1., 1., 10.])
def test_columns_dict_construct(self):
self.assertTrue(isinstance(self.columns.data, NdElement))
def test_columns_ndelement_construct(self):
columns = Columns(NdElement(zip(self.xs, self.ys)))
self.assertTrue(isinstance(columns.data, NdElement))
def test_columns_items_construct(self):
columns = Columns(zip(self.keys1, self.values1),
kdims=self.kdims, vdims=self.vdims)
self.assertTrue(isinstance(columns.data, NdElement))
def test_columns_sample(self):
samples = self.columns.sample([0, 5, 10]).dimension_values('y')
self.assertEqual(samples, np.array([0, 0.5, 1]))
def test_columns_index_row_gender(self):
table = Columns(zip(self.keys1, self.values1),
kdims=self.kdims, vdims=self.vdims)
indexed = Columns(OrderedDict([(('F', 12), (10, 0.8))]),
kdims=self.kdims, vdims=self.vdims)
row = table['F',:]
self.assertEquals(row, indexed)
def test_columns_index_rows_gender(self):
table = Columns(zip(self.keys1, self.values1),
kdims=self.kdims, vdims=self.vdims)
row = table['M',:]
indexed = Columns(OrderedDict([(('M', 10), (15, 0.8)),
(('M', 16), (18, 0.6))]),
kdims=self.kdims, vdims=self.vdims)
self.assertEquals(row, indexed)
def test_columns_index_row_age(self):
table = Columns(zip(self.keys1, self.values1),
kdims=self.kdims, vdims=self.vdims)
indexed = Columns(OrderedDict([(('F', 12), (10, 0.8))]),
kdims=self.kdims, vdims=self.vdims)
self.assertEquals(table[:, 12], indexed)
def test_columns_index_item_table(self):
table = Columns(zip(self.keys1, self.values1),
kdims=self.kdims, vdims=self.vdims)
indexed = Columns(OrderedDict([(('F', 12), (10, 0.8))]),
kdims=self.kdims, vdims=self.vdims)
self.assertEquals(table['F', 12], indexed)
def test_columns_index_value1(self):
#.........这里部分代码省略.........
示例3: ColumnsNdArrayTest
# 需要导入模块: from holoviews import Columns [as 别名]
# 或者: from holoviews.Columns import closest [as 别名]
class ColumnsNdArrayTest(ComparisonTestCase):
def setUp(self):
self.xs = range(11)
self.ys = np.linspace(0, 1, 11)
self.zs = np.sin(self.xs)
self.columns = Columns((self.xs, self.ys), kdims=['x'], vdims=['y'])
def test_columns_shape(self):
self.assertEqual(self.columns.shape, (11, 2))
def test_columns_range(self):
self.assertEqual(self.columns.range('y'), (0., 1.))
def test_columns_closest(self):
closest = self.columns.closest([0.51, 1, 9.9])
self.assertEqual(closest, [1., 1., 10.])
def test_columns_values_construct(self):
columns = Columns(self.ys)
self.assertTrue(isinstance(columns.data, np.ndarray))
def test_columns_tuple_construct(self):
columns = Columns((self.xs, self.ys))
self.assertTrue(isinstance(columns.data, np.ndarray))
def test_columns_array_construct(self):
columns = Columns(np.column_stack([self.xs, self.ys]))
self.assertTrue(isinstance(columns.data, np.ndarray))
def test_columns_tuple_list_construct(self):
columns = Columns(zip(self.xs, self.ys))
self.assertTrue(isinstance(columns.data, np.ndarray))
def test_columns_sort_vdim(self):
columns = Columns((self.xs, -self.ys), kdims=['x'], vdims=['y'])
columns_sorted = Columns((self.xs[::-1], -self.ys[::-1]),
kdims=['x'], vdims=['y'])
self.assertEqual(columns.sort('y'), columns_sorted)
def test_columns_index(self):
self.assertEqual(self.columns[5], self.ys[5])
def test_columns_slice(self):
columns_slice = Columns(zip(range(5, 9), np.linspace(0.5,0.8, 4)),
kdims=['x'], vdims=['y'])
self.assertEqual(self.columns[5:9], columns_slice)
def test_columns_closest(self):
closest = self.columns.closest([0.51, 1, 9.9])
self.assertEqual(closest, [1., 1., 10.])
def test_columns_getitem_column(self):
self.compare_arrays(self.columns['y'], self.ys)
def test_columns_sample(self):
samples = self.columns.sample([0, 5, 10]).dimension_values('y')
self.assertEqual(samples, np.array([0, 0.5, 1]))
def test_columns_add_dimensions_value(self):
table = Columns((self.xs, self.ys),
kdims=['x'], vdims=['y'])
table = table.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(self):
table = Columns((self.xs, self.ys),
kdims=['x'], vdims=['y'])
table = table.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))))
def test_columns_collapse(self):
collapsed = HoloMap({i: Columns((self.xs, self.ys*i), kdims=['x'], vdims=['y'])
for i in range(10)}, kdims=['z']).collapse('z', np.mean)
self.compare_columns(collapsed, Columns((self.xs, self.ys*4.5), kdims=['x'], vdims=['y']))
def test_columns_1d_reduce(self):
columns = Columns((self.xs, self.ys), kdims=['x'], vdims=['y'])
self.assertEqual(columns.reduce('x', np.mean), np.float64(0.5))
def test_columns_2d_reduce(self):
columns = Columns((self.xs, self.ys, self.zs), kdims=['x', 'y'], vdims=['z'])
self.assertEqual(np.array(columns.reduce(['x', 'y'], np.mean)),
np.array(0.12828985192891))
def test_columns_2d_partial_reduce(self):
columns = Columns((self.xs, self.ys, self.zs), kdims=['x', 'y'], vdims=['z'])
self.assertEqual(columns.reduce(['y'], np.mean),
Columns((self.xs, self.zs), kdims=['x'], vdims=['z']))
def test_columns_2d_aggregate_partial(self):
columns = Columns((self.xs, self.ys, self.zs), kdims=['x', 'y'], vdims=['z'])
self.assertEqual(columns.aggregate(['x'], np.mean),
Columns((self.xs, self.zs), kdims=['x'], vdims=['z']))
def test_columns_array(self):
self.assertEqual(self.columns.array(), np.column_stack([self.xs, self.ys]))
示例4: HomogeneousColumnTypes
# 需要导入模块: from holoviews import Columns [as 别名]
# 或者: from holoviews.Columns import closest [as 别名]
class HomogeneousColumnTypes(object):
"""
Tests for data formats that require all columns to have the same
type (e.g numpy arrays)
"""
def setUp(self):
self.restore_datatype = Columns.datatype
self.data_instance_type = None
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(np.column_stack([self.xs, self.y_ints]),
kdims=['x'], vdims=['y'])
def tearDown(self):
Columns.datatype = self.restore_datatype
# Test the array constructor (homogenous data) to be supported by
# all interfaces.
def test_columns_array_init_hm(self):
"Tests support for arrays (homogeneous)"
columns = Columns(np.column_stack([self.xs, self.xs_2]),
kdims=['x'], vdims=['x2'])
self.assertTrue(isinstance(columns.data, self.data_instance_type))
def test_columns_ndelement_init_hm(self):
"Tests support for homogeneous NdElement (backwards compatibility)"
columns = Columns(NdElement(zip(self.xs, self.xs_2),
kdims=['x'], vdims=['x2']))
self.assertTrue(isinstance(columns.data, self.data_instance_type))
def test_columns_dataframe_init_hm(self):
"Tests support for homogeneous DataFrames"
if pd is None:
raise SkipTest("Pandas not available")
columns = Columns(pd.DataFrame({'x':self.xs, 'x2':self.xs_2}),
kdims=['x'], vdims=[ 'x2'])
self.assertTrue(isinstance(columns.data, self.data_instance_type))
# Properties and information
def test_columns_shape(self):
self.assertEqual(self.columns_hm.shape, (11, 2))
def test_columns_range(self):
self.assertEqual(self.columns_hm.range('y'), (0, 20))
def test_columns_closest(self):
closest = self.columns_hm.closest([0.51, 1, 9.9])
self.assertEqual(closest, [1., 1., 10.])
# Operations
def test_columns_sort_vdim_hm(self):
xs_2 = np.array(self.xs_2)
columns = Columns(np.column_stack([self.xs, -xs_2]),
kdims=['x'], vdims=['y'])
columns_sorted = Columns(np.column_stack([self.xs[::-1], -xs_2[::-1]]),
kdims=['x'], vdims=['y'])
self.assertEqual(columns.sort('y'), columns_sorted)
def test_columns_sample_hm(self):
samples = self.columns_hm.sample([0, 5, 10]).dimension_values('y')
self.assertEqual(samples, np.array([0, 10, 20]))
def test_columns_array_hm(self):
self.assertEqual(self.columns_hm.array(),
np.column_stack([self.xs, self.y_ints]))
def test_columns_add_dimensions_value_hm(self):
table = self.columns_hm.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_hm(self):
table = self.columns_hm.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))))
def test_columns_slice_hm(self):
columns_slice = Columns({'x':range(5, 9), 'y':[2*i for i in range(5, 9)]},
kdims=['x'], vdims=['y'])
self.assertEqual(self.columns_hm[5:9], columns_slice)
def test_columns_1D_reduce_hm(self):
columns = Columns({'x':self.xs, 'y':self.y_ints}, kdims=['x'], vdims=['y'])
self.assertEqual(columns.reduce('x', np.mean), 10)
def test_columns_2D_reduce_hm(self):
columns = Columns({'x':self.xs, 'y':self.y_ints, 'z':[el**2 for el in self.y_ints]},
kdims=['x', 'y'], vdims=['z'])
self.assertEqual(np.array(columns.reduce(['x', 'y'], np.mean)),
np.array(140))
#.........这里部分代码省略.........