fast vectorized array operations for data munging and cleaningsubsetting and filteringtransformationand any other kinds of computations common array algorithms like sortinguniqueand set operations efficient descriptive statistics and aggregating/summarizing data data alignment and relational data manipulations for merging and joining together heterogeneous data sets expressing conditional logic as array expressions instead of loops with if-elifelse branches group-wise data manipulations (aggregationtransformationfunction applicationmuch more on this in while numpy provides the computational foundation for these operationsyou will likely want to use pandas as your basis for most kinds of data analysis (especially for structured or tabular dataas it provides richhigh-level interface making most common data tasks very concise and simple pandas also provides some more domainspecific functionality like time series manipulationwhich is not present in numpy in this and throughout the booki use the standard numpy convention of always using import numpy as np you areof coursewelcome to put from numpy import in your code to avoid having to write np but would caution you against making habit of this the numpy ndarraya multidimensional array object one of the key features of numpy is its -dimensional array objector ndarraywhich is fastflexible container for large data sets in python arrays enable you to perform mathematical operations on whole blocks of data using similar syntax to the equivalent operations between scalar elementsin [ ]data out[ ]array([ - - ] ]]in [ ]data out[ ]array([ - - ] ]]in [ ]data data out[ ]array([ - - ] ]]an ndarray is generic multidimensional container for homogeneous datathat isall of the elements must be the same type every array has shapea tuple indicating the size of each dimensionand dtypean object describing the data type of the arrayin [ ]data shape out[ ]( numpy basicsarrays and vectorized computation www it-ebooks info