Наиболее эффективный в вычислительном отношении способ хранения целочисленных данных, когда один столбец представляет собой одно целое число, а другой столбец - несколько целых чисел (переменная)? - PullRequest
0 голосов
/ 16 октября 2018

Я пытаюсь сохранить очень большой набор данных, где один столбец представляет собой одно целое число, а другой столбец - несколько целых чисел, а число целых во втором столбце может варьироваться от 3 до 50.

Раньше я сохранял его, имея двумерный массив, где первый столбец был целым числом, а второй столбец - списком.

Я бы сохранил это, используя numpy.save, но когда я попытался бы открыть его, моя среда (колаборатория Google) потерпела крах, так как набор данных настолько велик, и у меня не хватило памяти.Позже я узнал, что числовые массивы не оптимизированы для хранения списков Python, поэтому я преобразовал второй столбец в числовые массивы.

Однако теперь я даже не могу сохранить, потому что моя среда падает, когда я пытаюсь.

Вот как выглядят первые 10 строк данных numpy

array([[0,
        array([10158697,  5255434,  9860860,  3677049,  3451292,  7225330])],
       [1,
        array([ 5985929,  7356938,  5232932,  4623077, 10461651,  6629144,
        2738221,  7672279,  3197654, 11678039,  1912097,  6581279,
        8141689,  6694817,  6139889,  7946369,  3995629,  3169031,
        3793217,  6990097, 11298098,  6120907,  5336712,  7366785,
        7363171,  3933563,  6484209,  4243394,  6371367,  4361218,
       11469370,  6166715, 11519607, 11602639, 10759034,  6432476,
        5327726, 11390220,  7009744, 10225744,  3781058,  1305863,
         462965,  1158562,  2620006,    73896,  4945223, 11780201,
        3044821])],
       [2,
        array([10847593,  8665775,   341568,  4164850,  6509965,  8227738])],
       [3,
        array([ 9105020,  1896456,  2757197,  5911741,  8123078, 10629261,
        5646782,  5255907,  8802504,  3735293,  5496511,  1612181,
       10029269,  8911733,  8035123,  4855475,  2226494, 10448630,
        2041328,   532211, 10049766,  7320606,  7783187, 11536583,
        9192742,  8965808,  7750786,  2462038,   111935,  4306882,
       11193228])],
       [4,
        array([11406300,  9947761,  2539951,  1928472,  1286647,  1360522,
        9680046,  1304518,  2577907,  5903319,  6304940,  8249558,
       11156695,  5704721,  9753227,   465481,  8849435,  5040956,
        8124190, 11094867,  9225419, 10531161,  3796335,  6660230,
         823696,  3271428,  9167574])],
       [5, array([3535672, 9474011, 4708696, 9700618, 4762633])],
       [6,
        array([ 1352149,  6408648,  3218823,   977256,  2488662,   603435,
        6576555,  2555278,  5487362, 10008975,  5066785,  5294573,
        1381729])],
       [7,
        array([ 7078697,  2981709,  2426786,   676729,  2688166,  3353437,
        7244406,  7804172,  9142652, 10594869,    95474,  3867698,
        6645756,  1936281,  3728779, 10800050,  8270358,  2336174,
        6785259,  7282204,  7485619,  8041965,  2445126,  5681877,
        8383953,  9431775, 11442616,  9835489,  3940227,  1289543,
          87876,  6148249,  3026723,  1651607,  4135482,   916739,
       10408908,  9178863, 11775813,  1652898,  1190197,  1913270,
        3759101,  7491500,  5183607,  8476053,  8482428, 11354398,
        2370455,  6820229,  3952122,  9633865,  4498499,  1475415,
       11303906,  2958509, 10639369])],
       [8,
        array([   67999,  3847504,  8303130,   748628,  1321792,  3453436,
        2813805,  6915028,  8459024, 10499123,  8855154,  9783163,
        8580897,  3092270,  3438170,  9067374, 11068581,  4926186,
        6137797,  2207028,  2806970,  8601327,  5183768, 10655752,
        2775719,  6653472,  3995496,  2488194,  3610797,  5508794,
        6524258,  2368954,     2070,  9522863,  1765121,  7842059,
       11473248,  3077500,   130699,  1407101,  2434487,  1129155,
        5643519,  7780188])],
       [9, array([8528119, 6930255,  630592, 5476242])]], dtype=object)

Есть ли лучший способ хранить данные в формате, где есть группа целых чисел, и каждое целое число соответствует переменномуколичество целых чисел?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...