def _serialize(data, buf): if isinstance(data, int): data = cint(data) elif isinstance(data, float): data = cfloat(data) if type(data) in [byte, short, cint, clong, cfloat, double]: buf.write(STRUCTS[INVTYPES[type(data)]].pack(data)) elif isinstance(data, str): write_string(data, buf) elif isinstance(data, list): buf.write(chr(data[0])) buf.write(STRUCTS[3].pack(len(data) - 1)) for i in data[1:]: _serialize(i, buf) elif isinstance(data, dict): for tag in data: if isinstance(data[tag], ndarray): buf.write(chr(ARRAYTYPES[data[tag].dtype.name])) else: buf.write(chr(INVTYPES[type(data[tag])])) write_string(tag, buf) _serialize(data[tag], buf) buf.write(chr(0)) elif isinstance(data, ndarray): value_str = data.tostring() buf.write( struct.pack(">I%ds" % (len(value_str), ), data.size, value_str))
def _serialize(data, buf): if isinstance(data, int): data = cint(data) elif isinstance(data, float): data = cfloat(data) if type(data) in [byte, short, cint, clong, cfloat, double]: buf.write(STRUCTS[INVTYPES[type(data)]].pack(data)) elif isinstance(data, str): write_string(data, buf) elif isinstance(data, list): buf.write(chr(data[0])) buf.write(STRUCTS[3].pack(len(data)-1)) for i in data[1:]: _serialize(i, buf) elif isinstance(data, dict): for tag in data: if isinstance(data[tag], ndarray): buf.write(chr(ARRAYTYPES[data[tag].dtype.name])) else: buf.write(chr(INVTYPES[type(data[tag])])) write_string(tag, buf) _serialize(data[tag], buf) buf.write(chr(0)) elif isinstance(data, ndarray): value_str = data.tostring() buf.write(struct.pack(">I%ds" % (len(value_str),), data.size, value_str))
reveal_type(np.short()) # E: {short} reveal_type(np.intc()) # E: {intc} reveal_type(np.intp()) # E: {intp} reveal_type(np.int0()) # E: {intp} reveal_type(np.int_()) # E: {int_} reveal_type(np.longlong()) # E: {longlong} reveal_type(np.ubyte()) # E: {ubyte} reveal_type(np.ushort()) # E: {ushort} reveal_type(np.uintc()) # E: {uintc} reveal_type(np.uintp()) # E: {uintp} reveal_type(np.uint0()) # E: {uintp} reveal_type(np.uint()) # E: {uint} reveal_type(np.ulonglong()) # E: {ulonglong} reveal_type(np.half()) # E: {half} reveal_type(np.single()) # E: {single} reveal_type(np.double()) # E: {double} reveal_type(np.float_()) # E: {double} reveal_type(np.longdouble()) # E: {longdouble} reveal_type(np.longfloat()) # E: {longdouble} reveal_type(np.csingle()) # E: {csingle} reveal_type(np.singlecomplex()) # E: {csingle} reveal_type(np.cdouble()) # E: {cdouble} reveal_type(np.complex_()) # E: {cdouble} reveal_type(np.cfloat()) # E: {cdouble} reveal_type(np.clongdouble()) # E: {clongdouble} reveal_type(np.clongfloat()) # E: {clongdouble} reveal_type(np.longcomplex()) # E: {clongdouble}
np.uint0() np.uint() np.ulonglong() np.half() np.single() np.double() np.float_() np.longdouble() np.longfloat() np.csingle() np.singlecomplex() np.cdouble() np.complex_() np.cfloat() np.clongdouble() np.clongfloat() np.longcomplex() np.bool_().item() np.int_().item() np.uint64().item() np.float32().item() np.complex128().item() np.str_().item() np.bytes_().item() np.bool_().tolist() np.int_().tolist() np.uint64().tolist()
print( arraytobytes.tobytes("C") ) #C language print b'\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00' print( arraytobytes.tobytes("F") ) #Fortran language print b'\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00' #39. Write a NumPy program to convert a given array into a list and then convert it into a list again. givenarray = np.array([2, 3, 4, 5, 6]) print(givenarray) #print [2 3 4 5 6] print(list(givenarray)) #print [2, 3, 4, 5, 6] numpyfunctiontolist = givenarray.tolist() print(numpyfunctiontolist) #print [2, 3, 4, 5, 6] print(type(numpyfunctiontolist)) #print < class 'list' > #40. Write a NumPy program to compute the x and y coordinates for points on a sine curve and plot the points using matplotlib. #41. Write a NumPy program to convert numpy dtypes to native python types. #Source: https://stackoverflow.com/questions/9452775/converting-numpy-dtypes-to-native-python-types numpynumber = np.array([5, 7, 9]) print(numpynumber) #print [5 7 9] numpyfloat = np.float32([5, 7, 9]) print(numpyfloat) #print [5. 7. 9.] print(np.float64(numpyfloat)) #print [5. 7. 9.] #print(type(np.float64(numpyfloat).item())) #print ValueError: can only convert an array of size 1 to a Python scalar print(type(np.float64(0).item())) #print <class 'float'> print(np.uint32(numpyfloat)) #print [5 7 9] print(type(np.uint32(0).item())) #print <class 'int'> print(np.cfloat(numpyfloat)) #print [5.+0.j 7.+0.j 9.+0.j] RM: complex print(type(np.cfloat(0).item())) #print <class 'complex'>
reveal_type(np.short()) # E: numpy.signedinteger[numpy.typing._ reveal_type(np.intc()) # E: numpy.signedinteger[numpy.typing._ reveal_type(np.intp()) # E: numpy.signedinteger[numpy.typing._ reveal_type(np.int0()) # E: numpy.signedinteger[numpy.typing._ reveal_type(np.int_()) # E: numpy.signedinteger[numpy.typing._ reveal_type(np.longlong()) # E: numpy.signedinteger[numpy.typing._ reveal_type(np.ubyte()) # E: numpy.unsignedinteger[numpy.typing._ reveal_type(np.ushort()) # E: numpy.unsignedinteger[numpy.typing._ reveal_type(np.uintc()) # E: numpy.unsignedinteger[numpy.typing._ reveal_type(np.uintp()) # E: numpy.unsignedinteger[numpy.typing._ reveal_type(np.uint0()) # E: numpy.unsignedinteger[numpy.typing._ reveal_type(np.uint()) # E: numpy.unsignedinteger[numpy.typing._ reveal_type(np.ulonglong()) # E: numpy.unsignedinteger[numpy.typing._ reveal_type(np.half()) # E: numpy.floating[numpy.typing._ reveal_type(np.single()) # E: numpy.floating[numpy.typing._ reveal_type(np.double()) # E: numpy.floating[numpy.typing._ reveal_type(np.float_()) # E: numpy.floating[numpy.typing._ reveal_type(np.longdouble()) # E: numpy.floating[numpy.typing._ reveal_type(np.longfloat()) # E: numpy.floating[numpy.typing._ reveal_type(np.csingle()) # E: numpy.complexfloating[numpy.typing._ reveal_type(np.singlecomplex()) # E: numpy.complexfloating[numpy.typing._ reveal_type(np.cdouble()) # E: numpy.complexfloating[numpy.typing._ reveal_type(np.complex_()) # E: numpy.complexfloating[numpy.typing._ reveal_type(np.cfloat()) # E: numpy.complexfloating[numpy.typing._ reveal_type(np.clongdouble()) # E: numpy.complexfloating[numpy.typing._ reveal_type(np.clongfloat()) # E: numpy.complexfloating[numpy.typing._ reveal_type(np.longcomplex()) # E: numpy.complexfloating[numpy.typing._
#C4-FINBIM2 #filtramos aquellos con actividad posterior a inicio de 2o bim. (parti.) len(d[(d['date'] > "2016-08-01") & (d['block'] == "C4")]['usrid'].value_counts()) ####D4### #cantidades iniciales de gente en el bloque len(d[d['block'] == "D4"]['usrid'].value_counts()) #D4-FINBIM2 #filtramos aquellos con actividad posterior a inicio de 2o bim. (parti.) len(d[(d['date'] > "2016-08-15") & (d['block'] == "D4")]['usrid'].value_counts()) if __name__ == '__main__': main() ''' import numpy as np # examples using a.item() type(np.float32(0).item()) # <type 'float'> type(np.float64(0).item()) # <type 'float'> type(np.uint32(0).item()) # <type 'long'> # examples using np.asscalar(a) type(np.asscalar(np.int16(0))) # <type 'int'> type(np.asscalar(np.cfloat(0))) # <type 'complex'> type(np.asscalar(np.datetime64(0))) # <type 'datetime.datetime'> type(np.asscalar(np.timedelta64(0))) # <type 'datetime.timedelta'>
# In[87]: import numpy as np # for example, numpy.float32 -> python float val = np.float32(0) pyval = val.item() print(type(pyval)) # <class 'float'> # and similar... type(np.float64(0).item()) # <class 'float'> type(np.uint32(0).item()) # <class 'long'> type(np.int16(0).item()) # <class 'int'> type(np.cfloat(0).item()) # <class 'complex'> type(np.datetime64(0, 'D').item()) # <class 'datetime.date'> type(np.datetime64('2001-01-01 00:00:00').item()) # <class 'datetime.datetime'> type(np.timedelta64(0, 'D').item()) # <class 'datetime.timedelta'> # ### Better way to shuffle two numpy arrays in unison # In[88]: a = numpy.array([[[ 0., 1., 2.], [ 3., 4., 5.]], [[ 6., 7., 8.], [ 9., 10., 11.]],