Exemple #1
0
 def test_last(self):
     t = Table('table_last', dshape="{a: int, b: float32}", create=True)
     t.resize(10)
     ivalues = np.random.randint(100,size=10)
     t['a'] = ivalues
     fvalues = np.random.rand(10)
     t['b'] = fvalues
     last_ = list(t.last().values())
     self.assertEqual(last_, [t._column(0)[-1],t._column(1)[-1]])
     last_a = t.last('a')
     self.assertEqual(last_a, t._column(0)[-1])
     last_a_b = t.last(['a','b'])
     self.assertEqual(list(last_a_b),last_)
Exemple #2
0
 def test_last(self) -> None:
     t = Table("table_last", dshape="{a: int, b: float32}", create=True)
     t.resize(10)
     ivalues = np.random.randint(100, size=10)
     t["a"] = ivalues
     fvalues = np.random.rand(10)
     t["b"] = fvalues
     last_ = list(notNone(t.last()).values())
     self.assertEqual(last_, [t._column(0)[-1], t._column(1)[-1]])
     last_a = t.last("a")
     self.assertEqual(last_a, t._column(0)[-1])
     last_a_b = t.last(["a", "b"])
     self.assertEqual(list(last_a_b), last_)
Exemple #3
0
 def test_at(self):
     t = Table('table_at', dshape="{a: int, b: float32}", create=True)
     t.resize(20)
     ivalues = np.random.randint(100,size=20)
     t['a'] = ivalues
     fvalues = np.random.rand(20)
     t['b'] = fvalues
     at_ = t.at[3,'a']
     self.assertEqual(at_, t._column(0)[3])
     iat_ = t.iat[3, 1]
     self.assertEqual(iat_, t._column(1)[3])
     view = t.loc[2:11]
     at_ = view.at[3,'a']
     self.assertEqual(at_, view._column(0)[view.id_to_index(3)])
     iat_ = view.iat[3, 1]
     self.assertEqual(iat_, view._column(1)[3])
Exemple #4
0
 def _free_chunk_nb(t: Table) -> int:
     return sum(
         [
             len(e)
             for e in t._column("atext").storagegroup["atext"]._strings._freelist  # type: ignore
         ]
     )
Exemple #5
0
 def test_at(self) -> None:
     t = Table("table_at", dshape="{a: int, b: float32}", create=True)
     t.resize(20)
     ivalues = np.random.randint(100, size=20)
     t["a"] = ivalues
     fvalues = np.random.rand(20)
     t["b"] = fvalues
     at_ = t.at[3, "a"]
     self.assertEqual(at_, t._column(0)[3])
     iat_ = t.at[3, 1]
     self.assertEqual(iat_, t._column(1)[3])
     view = t.loc[2:11]
     assert view is not None
     at_ = view.at[3, "a"]
     self.assertEqual(at_, view._column(0)[view.id_to_index(3)])
     iat_ = view.at[3, 1]
     self.assertEqual(iat_, view._column(1)[3])
 def test_mmap5(self):
     #pylint: disable=protected-access
     self._rmtree()
     t = Table('table_mmap_5', dshape='{anint: int, atext: string}')
     for i in range(100):
         t.add(dict(anint=i, atext="abc"))
         t.add(dict(anint=i, atext="xyz"))
     nb_str = len(set(t._column("atext").storagegroup["atext"].view))
     self.assertEqual(nb_str, 2)
 def test_mmap6(self):
     #pylint: disable=protected-access
     long_text = "a"*LONG_SIZE
     self._rmtree()
     t = Table('table_mmap_6', dshape='{anint: int, atext: string}')
     for i in range(100):
         t.add(dict(anint=i, atext=long_text))
     nb_str = len(set(t._column("atext").storagegroup["atext"].view))
     self.assertEqual(nb_str, 100)
Exemple #8
0
 def test_set_at(self) -> None:
     t = Table("table_set_at", dshape="{a: int, b: float32}", create=True)
     t.resize(20)
     ivalues = np.random.randint(100, size=20)
     t["a"] = ivalues
     fvalues = np.random.rand(20)
     t["b"] = fvalues
     t.at[3, "a"] = 1001
     self.assertEqual(t._column(0)[3], 1001)
     t.at[3, "a"] = 1001
     self.assertEqual(t._column(0)[3], 1001)
     t.at[3, 0] = 1002
     self.assertEqual(t._column(0)[3], 1002)
     view = t.loc[2:11]
     assert view is not None
     view.loc[3, "a"] = 1003
     self.assertEqual(view._column(0)[view.id_to_index(3)], 1003)
     self.assertEqual(t._column(0)[3], 1003)
     view_view = view.loc[3:6]
     assert view_view is not None
     view_view.at[3, "a"] = 1004
     self.assertEqual(view_view._column(0)[view_view.id_to_index(3)], 1004)
     self.assertEqual(t._column(0)[3], 1004)
     view_view.at[2, 0] = 1005
     self.assertEqual(view_view._column(0)[2], 1005)
     self.assertEqual(
         t._column(0)[t.id_to_index(view_view.index_to_id(2))], 1005)
Exemple #9
0
 def test_set_loc(self) -> None:
     t = Table("table_set_loc", dshape="{a: int, b: float32}", create=True)
     t.resize(20)
     ivalues = np.random.randint(100, size=20)
     t["a"] = ivalues
     fvalues = np.random.rand(20)
     t["b"] = fvalues
     t.loc[3:6] = [1001, 1002]
     self.assertTrue(np.array_equal(t._column(0)[3:7], np.repeat(1001, 4)))
     self.assertTrue(np.array_equal(t._column(1)[3:7], np.repeat(1002, 4)))
     t.loc[3:7] = 1003
     self.assertTrue(np.array_equal(t._column(0)[3:8], np.repeat(1003, 5)))
     self.assertTrue(np.array_equal(t._column(1)[3:8], np.repeat(1003, 5)))
     t.loc[3:7, ["a", "b"]] = [1004, 1005]
     self.assertTrue(np.array_equal(t._column(0)[3:8], np.repeat(1004, 5)))
     self.assertTrue(np.array_equal(t._column(1)[3:8], np.repeat(1005, 5)))
     t.loc[3:7, ["a", "b"]] = [1006, 1007]  # previous iloc test
     self.assertTrue(np.array_equal(t._column(0)[3:7], np.repeat(1006, 4)))
     self.assertTrue(np.array_equal(t._column(1)[3:7], np.repeat(1007, 4)))
     view = t.loc[2:11]
     assert view is not None
     view.loc[3:6] = [1008, 1009]
     self.assertTrue(
         np.array_equal(
             view._column(0)[view.id_to_index(slice(3, 6))],
             np.repeat(1008, 4)))
     self.assertTrue(
         np.array_equal(
             view._column(1)[view.id_to_index(slice(3, 6))],
             np.repeat(1009, 4)))
     self.assertTrue(np.array_equal(t._column(0)[3:7], np.repeat(1008, 4)))
     self.assertTrue(np.array_equal(t._column(1)[3:7], np.repeat(1009, 4)))
     view_view = view.loc[3:6]
     assert view_view is not None
     view_view.loc[3:6] = [1010, 1011]
     self.assertTrue(
         np.array_equal(
             view_view._column(0)[view_view.id_to_index(slice(3, 6))],
             np.repeat(1010, 4),
         ))
     self.assertTrue(
         np.array_equal(
             view_view._column(1)[view_view.id_to_index(slice(3, 6))],
             np.repeat(1011, 4),
         ))
     self.assertTrue(np.array_equal(t._column(0)[3:7], np.repeat(1010, 4)))
     self.assertTrue(np.array_equal(t._column(1)[3:7], np.repeat(1011, 4)))
Exemple #10
0
 def test_set_loc(self):
     t = Table('table_set_loc', dshape="{a: int, b: float32}", create=True)
     t.resize(20)
     ivalues = np.random.randint(100,size=20)
     t['a'] = ivalues
     fvalues = np.random.rand(20)
     t['b'] = fvalues
     t.loc[3:6] = [1001, 1002]
     self.assertTrue(np.array_equal(t._column(0)[3:7], np.repeat(1001, 4)))
     self.assertTrue(np.array_equal(t._column(1)[3:7], np.repeat(1002, 4)))
     t.loc[3:7] = 1003
     self.assertTrue(np.array_equal(t._column(0)[3:8], np.repeat(1003, 5)))
     self.assertTrue(np.array_equal(t._column(1)[3:8], np.repeat(1003, 5)))
     t.loc[3:7,['a','b']] = [1004, 1005]
     self.assertTrue(np.array_equal(t._column(0)[3:8], np.repeat(1004, 5)))
     self.assertTrue(np.array_equal(t._column(1)[3:8], np.repeat(1005, 5)))
     t.iloc[3:7,['a','b']] = [1006, 1007]
     self.assertTrue(np.array_equal(t._column(0)[3:7], np.repeat(1006, 4)))
     self.assertTrue(np.array_equal(t._column(1)[3:7], np.repeat(1007, 4)))
     view = t.loc[2:11]
     view.loc[3:6] = [1008, 1009]
     self.assertTrue(np.array_equal(view._column(0)[
         view.id_to_index(slice(3,6))], np.repeat(1008, 4)))
     self.assertTrue(np.array_equal(view._column(1)[
         view.id_to_index(slice(3,6))], np.repeat(1009, 4)))
     self.assertTrue(np.array_equal(t._column(0)[3:7],
                                    np.repeat(1008, 4)))
     self.assertTrue(np.array_equal(t._column(1)[3:7],
                                    np.repeat(1009, 4)))
     view_view = view.loc[3:6]
     view_view.loc[3:6] = [1010, 1011]
     self.assertTrue(np.array_equal(view_view._column(0)[
         view_view.id_to_index(slice(3,6))], np.repeat(1010, 4)))
     self.assertTrue(np.array_equal(view_view._column(1)[
         view_view.id_to_index(slice(3,6))], np.repeat(1011, 4)))
     self.assertTrue(np.array_equal(t._column(0)[3:7], np.repeat(1010, 4)))
     self.assertTrue(np.array_equal(t._column(1)[3:7], np.repeat(1011, 4)))