Skip to content

Instantly share code, notes, and snippets.

@rvernica
Last active March 10, 2017 05:40
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save rvernica/ff7932c69d57447db0afbea10bd0236c to your computer and use it in GitHub Desktop.
Save rvernica/ff7932c69d57447db0afbea10bd0236c to your computer and use it in GitHub Desktop.
SciDB-Py to NumPy or Pandas Export
{i,j,k} b,c,dt,dtz,d,f,i8,i16,i32,i64,s,u8,u16,u32,u64
{0,-2,0} true,'a','1970-01-01 00:00:00','1970-01-01 00:00:00 -00:00',0.2,0.1,-8,-16,-32,-64,'abc',8,16,32,64
{0,-2,1} true,'a','1970-01-01 00:00:00','1970-01-01 00:00:00 -00:00',0.2,0.1,-8,-16,-32,-64,'abc',8,16,32,64
{0,-2,2} true,'a','1970-01-01 00:00:00','1970-01-01 00:00:00 -00:00',0.2,0.1,-8,-16,-32,-64,'abc',8,16,32,64
{0,-1,0} true,'a','1970-01-01 00:00:00','1970-01-01 00:00:00 -00:00',0.2,0.1,-8,-16,-32,-64,'abc',8,16,32,64
{0,-1,1} true,'a','1970-01-01 00:00:00','1970-01-01 00:00:00 -00:00',0.2,0.1,-8,-16,-32,-64,'abc',8,16,32,64
{0,-1,2} true,'a','1970-01-01 00:00:00','1970-01-01 00:00:00 -00:00',0.2,0.1,-8,-16,-32,-64,'abc',8,16,32,64
{0,0,0} true,'a','1970-01-01 00:00:00','1970-01-01 00:00:00 -00:00',0.2,0.1,-8,-16,-32,-64,'abc',8,16,32,64
{0,0,1} true,'a','1970-01-01 00:00:00','1970-01-01 00:00:00 -00:00',0.2,0.1,-8,-16,-32,-64,'abc',8,16,32,64
{0,0,2} true,'a','1970-01-01 00:00:00','1970-01-01 00:00:00 -00:00',0.2,0.1,-8,-16,-32,-64,'abc',8,16,32,64
{1,-2,0} null,null,null,null,null,?1,null,null,null,null,null,null,null,null,null
{1,-2,1} null,null,null,null,null,?1,null,null,null,null,null,null,null,null,null
{1,-2,2} null,null,null,null,null,?1,null,null,null,null,null,null,null,null,null
{1,-1,0} null,null,null,null,null,?1,null,null,null,null,null,null,null,null,null
{1,-1,1} null,null,null,null,null,?1,null,null,null,null,null,null,null,null,null
{1,-1,2} null,null,null,null,null,?1,null,null,null,null,null,null,null,null,null
{1,0,0} null,null,null,null,null,?1,null,null,null,null,null,null,null,null,null
{1,0,1} null,null,null,null,null,?1,null,null,null,null,null,null,null,null,null
{1,0,2} null,null,null,null,null,?1,null,null,null,null,null,null,null,null,null
{2,-2,0} ?1,?10,?110,?120,nan,-inf,null,null,null,null,?20,?8,?16,?32,?64
{2,-2,1} ?1,?10,?110,?120,nan,-inf,null,null,null,null,?20,?8,?16,?32,?64
{2,-2,2} ?1,?10,?110,?120,nan,-inf,null,null,null,null,?20,?8,?16,?32,?64
{2,-1,0} ?1,?10,?110,?120,nan,-inf,null,null,null,null,?20,?8,?16,?32,?64
{2,-1,1} ?1,?10,?110,?120,nan,-inf,null,null,null,null,?20,?8,?16,?32,?64
{2,-1,2} ?1,?10,?110,?120,nan,-inf,null,null,null,null,?20,?8,?16,?32,?64
{2,0,0} ?1,?10,?110,?120,nan,-inf,null,null,null,null,?20,?8,?16,?32,?64
{2,0,1} ?1,?10,?110,?120,nan,-inf,null,null,null,null,?20,?8,?16,?32,?64
{2,0,2} ?1,?10,?110,?120,nan,-inf,null,null,null,null,?20,?8,?16,?32,?64
-- remove(type_showcase_i);
-- remove(type_showcase);
create array type_showcase_i<
b :bool null,
c :char null,
dt :datetime null,
dtz:datetimetz null,
d :double null,
f :float null,
i8 :int8 null,
i16:int16 null,
i32:int32 null,
i64:int64 null,
s :string null,
u8 :uint8 null,
u16:uint16 null,
u32:uint32 null,
u64:uint64 null>[i=0:2];
store(
build(
type_showcase_i,
'[(true, "a" , "1970-01-01 00:00:00", "1970-01-01 00:00:00 -00:00", .2 , .1 , -8 , -16 , -32 , -64 , "abc", 8 , 16 , 32 , 64 ),
(null, null, null , null , null, ?1 , null, null, null, null, null , null, null, null, null),
(?1 , ?10, ?110 , ?120 , NaN, -inf , null, null, null, null, ?20 , ?8 , ?16 , ?32 , ?64 )]',
true),
type_showcase_i);
create array type_showcase<
b :bool null,
c :char null,
dt :datetime null,
dtz:datetimetz null,
d :double null,
f :float null,
i8 :int8 null,
i16:int16 null,
i32:int32 null,
i64:int64 null,
s :string null,
u8 :uint8 null,
u16:uint16 null,
u32:uint32 null,
u64:uint64 null>[i=0:2; j=-2:0; k=0:*];
store(
redimension(
cross_join(
cross_join(
type_showcase_i,
build(<x:int8 null>[j=-2:0], null)),
build(<y:int8 null>[k=0:2], null)),
type_showcase),
type_showcase);
>>> sdb.wrap_array('type_showcase').toarray()
array([[[ (True, 'a', datetime.datetime(1970, 1, 1, 0, 0), datetime.datetime(1970, 1, 1, 0, 0), 0.2, 0.10000000149011612, -8, -16, -32, -64L, u'abc', 8, 16, 32L, 64L),
(True, 'a', datetime.datetime(1970, 1, 1, 0, 0), datetime.datetime(1970, 1, 1, 0, 0), 0.2, 0.10000000149011612, -8, -16, -32, -64L, u'abc', 8, 16, 32L, 64L),
(True, 'a', datetime.datetime(1970, 1, 1, 0, 0), datetime.datetime(1970, 1, 1, 0, 0), 0.2, 0.10000000149011612, -8, -16, -32, -64L, u'abc', 8, 16, 32L, 64L)],
[ (True, 'a', datetime.datetime(1970, 1, 1, 0, 0), datetime.datetime(1970, 1, 1, 0, 0), 0.2, 0.10000000149011612, -8, -16, -32, -64L, u'abc', 8, 16, 32L, 64L),
(True, 'a', datetime.datetime(1970, 1, 1, 0, 0), datetime.datetime(1970, 1, 1, 0, 0), 0.2, 0.10000000149011612, -8, -16, -32, -64L, u'abc', 8, 16, 32L, 64L),
(True, 'a', datetime.datetime(1970, 1, 1, 0, 0), datetime.datetime(1970, 1, 1, 0, 0), 0.2, 0.10000000149011612, -8, -16, -32, -64L, u'abc', 8, 16, 32L, 64L)],
[ (True, 'a', datetime.datetime(1970, 1, 1, 0, 0), datetime.datetime(1970, 1, 1, 0, 0), 0.2, 0.10000000149011612, -8, -16, -32, -64L, u'abc', 8, 16, 32L, 64L),
(True, 'a', datetime.datetime(1970, 1, 1, 0, 0), datetime.datetime(1970, 1, 1, 0, 0), 0.2, 0.10000000149011612, -8, -16, -32, -64L, u'abc', 8, 16, 32L, 64L),
(True, 'a', datetime.datetime(1970, 1, 1, 0, 0), datetime.datetime(1970, 1, 1, 0, 0), 0.2, 0.10000000149011612, -8, -16, -32, -64L, u'abc', 8, 16, 32L, 64L)]],
[[ (True, '', None, None, nan, nan, 0, 0, -2147483648, -9223372036854775808L, None, 0, 0, 2147483648L, 9223372036854775808L),
(True, '', None, None, nan, nan, 0, 0, -2147483648, -9223372036854775808L, None, 0, 0, 2147483648L, 9223372036854775808L),
(True, '', None, None, nan, nan, 0, 0, -2147483648, -9223372036854775808L, None, 0, 0, 2147483648L, 9223372036854775808L)],
[ (True, '', None, None, nan, nan, 0, 0, -2147483648, -9223372036854775808L, None, 0, 0, 2147483648L, 9223372036854775808L),
(True, '', None, None, nan, nan, 0, 0, -2147483648, -9223372036854775808L, None, 0, 0, 2147483648L, 9223372036854775808L),
(True, '', None, None, nan, nan, 0, 0, -2147483648, -9223372036854775808L, None, 0, 0, 2147483648L, 9223372036854775808L)],
[ (True, '', None, None, nan, nan, 0, 0, -2147483648, -9223372036854775808L, None, 0, 0, 2147483648L, 9223372036854775808L),
(True, '', None, None, nan, nan, 0, 0, -2147483648, -9223372036854775808L, None, 0, 0, 2147483648L, 9223372036854775808L),
(True, '', None, None, nan, nan, 0, 0, -2147483648, -9223372036854775808L, None, 0, 0, 2147483648L, 9223372036854775808L)]],
[[ (True, '', None, None, nan, -inf, 0, 0, -2147483648, -9223372036854775808L, None, 0, 0, 2147483648L, 9223372036854775808L),
(True, '', None, None, nan, -inf, 0, 0, -2147483648, -9223372036854775808L, None, 0, 0, 2147483648L, 9223372036854775808L),
(True, '', None, None, nan, -inf, 0, 0, -2147483648, -9223372036854775808L, None, 0, 0, 2147483648L, 9223372036854775808L)],
[ (True, '', None, None, nan, -inf, 0, 0, -2147483648, -9223372036854775808L, None, 0, 0, 2147483648L, 9223372036854775808L),
(True, '', None, None, nan, -inf, 0, 0, -2147483648, -9223372036854775808L, None, 0, 0, 2147483648L, 9223372036854775808L),
(True, '', None, None, nan, -inf, 0, 0, -2147483648, -9223372036854775808L, None, 0, 0, 2147483648L, 9223372036854775808L)],
[ (True, '', None, None, nan, -inf, 0, 0, -2147483648, -9223372036854775808L, None, 0, 0, 0L, 9223372036854775808L),
(True, '', None, None, nan, -inf, 0, 0, -2147483648, -9223372036854775808L, None, 0, 0, 0L, 9223372036854775808L),
(True, '', None, None, nan, -inf, 0, 0, -2147483648, -9223372036854775808L, None, 0, 0, 0L, 9223372036854775808L)]]],
dtype=[('b', '?'), ('c', 'S1'), ('dt', '<M8[s]'), ('dtz', '<M8[s]'), ('d', '<f8'), ('f', '<f4'), ('i8', 'i1'), ('i16', '<i2'), ('i32', '<i4'), ('i64', '<i8'), ('s', 'O'), ('u8', 'u1'), ('u16', '<u2'), ('u32', '<u4'), ('u64', '<u8')])
>>> df = sdb.wrap_array('type_showcase').todataframe()
>>> df
b c dt dtz d f i8 i16 i32 \
i j k
0 -2 0 True a 1970-01-01 1970-01-01 0.2 0.100000 -8 -16 -32
1 True a 1970-01-01 1970-01-01 0.2 0.100000 -8 -16 -32
2 True a 1970-01-01 1970-01-01 0.2 0.100000 -8 -16 -32
-1 0 True a 1970-01-01 1970-01-01 0.2 0.100000 -8 -16 -32
1 True a 1970-01-01 1970-01-01 0.2 0.100000 -8 -16 -32
2 True a 1970-01-01 1970-01-01 0.2 0.100000 -8 -16 -32
0 0 True a 1970-01-01 1970-01-01 0.2 0.100000 -8 -16 -32
1 True a 1970-01-01 1970-01-01 0.2 0.100000 -8 -16 -32
2 True a 1970-01-01 1970-01-01 0.2 0.100000 -8 -16 -32
1 -2 0 True NaT NaT NaN NaN 0 0 -2147483648
1 True NaT NaT NaN NaN 0 0 -2147483648
2 True NaT NaT NaN NaN 0 0 -2147483648
-1 0 True NaT NaT NaN NaN 0 0 -2147483648
1 True NaT NaT NaN NaN 0 0 -2147483648
2 True NaT NaT NaN NaN 0 0 -2147483648
0 0 True NaT NaT NaN NaN 0 0 -2147483648
1 True NaT NaT NaN NaN 0 0 -2147483648
2 True NaT NaT NaN NaN 0 0 -2147483648
2 -2 0 True NaT NaT NaN -inf 0 0 -2147483648
1 True NaT NaT NaN -inf 0 0 -2147483648
2 True NaT NaT NaN -inf 0 0 -2147483648
-1 0 True NaT NaT NaN -inf 0 0 -2147483648
1 True NaT NaT NaN -inf 0 0 -2147483648
2 True NaT NaT NaN -inf 0 0 -2147483648
0 0 True NaT NaT NaN -inf 0 0 -2147483648
1 True NaT NaT NaN -inf 0 0 -2147483648
2 True NaT NaT NaN -inf 0 0 -2147483648
i64 s u8 u16 u32 u64
i j k
0 -2 0 -64 abc 8 16 32 64
1 -64 abc 8 16 32 64
2 -64 abc 8 16 32 64
-1 0 -64 abc 8 16 32 64
1 -64 abc 8 16 32 64
2 -64 abc 8 16 32 64
0 0 -64 abc 8 16 32 64
1 -64 abc 8 16 32 64
2 -64 abc 8 16 32 64
1 -2 0 -9223372036854775808 None 0 0 2147483648 9223372036854775808
1 -9223372036854775808 None 0 0 2147483648 9223372036854775808
2 -9223372036854775808 None 0 0 2147483648 9223372036854775808
-1 0 -9223372036854775808 None 0 0 2147483648 9223372036854775808
1 -9223372036854775808 None 0 0 2147483648 9223372036854775808
2 -9223372036854775808 None 0 0 2147483648 9223372036854775808
0 0 -9223372036854775808 None 0 0 2147483648 9223372036854775808
1 -9223372036854775808 None 0 0 2147483648 9223372036854775808
2 -9223372036854775808 None 0 0 2147483648 9223372036854775808
2 -2 0 -9223372036854775808 None 0 0 2147483648 9223372036854775808
1 -9223372036854775808 None 0 0 2147483648 9223372036854775808
2 -9223372036854775808 None 0 0 2147483648 9223372036854775808
-1 0 -9223372036854775808 None 0 0 2147483648 9223372036854775808
1 -9223372036854775808 None 0 0 2147483648 9223372036854775808
2 -9223372036854775808 None 0 0 2147483648 9223372036854775808
0 0 -9223372036854775808 None 0 0 0 9223372036854775808
1 -9223372036854775808 None 0 0 0 9223372036854775808
2 -9223372036854775808 None 0 0 0 9223372036854775808
>>> df.dtypes
b bool
c object
dt datetime64[ns]
dtz datetime64[ns]
d float64
f float32
i8 int8
i16 int16
i32 int32
i64 int64
s object
u8 uint8
u16 uint16
u32 uint32
u64 object
dtype: object
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment