python中值传递和引用传递
一般对象是引用传递
基础数据类型是值传递
NumPy
NumPy 数组中的最大和最小元素
numpy.max(arr)
numpy.min(arr)
NumPy查找最大值的索引
np.unravel_index(A.argmax(), A.shape)
Pandas
pandas对DataFrame做对数运算
#做log映射
for nIndexBotton in xrange(begin,end):
datas[datas.columns[nIndexBotton]] = datas[datas.columns[nIndexBotton]].apply(np.log2)
Series
Series查找最大值和最大值坐标,最小值和最小值坐标
minPos = minData.idxmin()
maxPos = minData.idxmax()
minData.max()
minData.min()
DataFrame
DataFrame拼接
result = pd.concat([df1, df2], axis= ‘ ')
①axis=0,纵向拼接(默认)
②axis=1,横向拼接
样例
import pandas as pd
df1 = pd.DataFrame({'Name':['张三','李四','王五'], 'Age':[25,26,27]})
df2 = pd.DataFrame({'Name':['大六'],'Age':[30]})
Age Name
0 25 张三
1 26 李四
2 27 王五
Age Name
0 30 大六
纵向拼接(默认)
df_concat = pd.concat([df1, df2], keys=['one', 'two'],ignore_index = True) # 重新生成新的索引)
或者
df_concat = pd.concat([df1, df2],ignore_index = True) # 重新生成新的索引)
或者
df_concat = pd.concat([df1, df2],axis=0,ignore_index = True) # 重新生成新的索引)
Age Name
0 25 张三
1 26 李四
2 27 王五
3 30 大六
如果没有重新生成索引
df_concat2 = pd.concat([df1, df2])
Age Name
0 25 张三
1 26 李四
2 27 王五
0 30 大六
索引还是保持原来的索引,索引作为数据进行拼接了
横向拼接
result = pd.concat([df1, df2], axis=1)
Age Name Age Name
0 25 张三 30.0 大六
1 26 李四 NaN NaN
2 27 王五 NaN NaN