array/list/DataFrame间的转化:
import numpy as np
import pandas as pd
lis=[[1, 2, 3], [4, 5, 6]]
#list转array
arr=np.array(lis)
print(arr) #[[1 2 3]
# [4 5 6]]
#array转list:
list(arr) #[array([1, 2, 3]), array([4, 5, 6])]
arr.tolist() #[[1, 2, 3], [4, 5, 6]]
#array转DateFrame
df=pd.DataFrame(arr,columns=['one','tow','three'])
df # one tow three
#0 1 2 3
#1 4 5 6
#DateFrame转array
df.to_numpy()
df.values #array([[1, 2, 3],
# [4, 5, 6]])
#list转array
arr=np.array(lis)
print(arr) #[[1 2 3]
# [4 5 6]]
arr=np.array([[1, 2, 3], [4, 5, 6]])
lis1=list(arr)
lis2=arr.tolist()
panda=pd.DataFrame(arr,columns=['one','tow','three'])
arr.tolist()
arr2=panda.values
print("list转array:\n np.array:\n{}\n\n\
array转list:\nlist():\n{}\n\n\
arr.tolist():\n{}\n\n\
arr转dateFrame:\n{}\n\n\
dateFrame里面的数据:\npanda.values:\n{}".format(arr,lis1,lis2,panda,arr2))
array取值:
# 对数组的操作(索引和切片)
print(arr[0]) # 输出:1
print(arr[1:4]) # 输出:[2 3 4]
维度转化:
#平铺:
arr.flatten() #[1 2 3 4 5 6]
arr.reshape(-1) #[1 2 3 4 5 6]
dateFrame取值:
#取'one'列带列名
#返回的数据类型是 pandas.DataFrame
df[['one']]
# one
#0 1
#1 4
#取所有行,'one'列,带列名
#返回的数据类型是 pandas.DataFrame
pd.loc[:,['one']]
# one
#0 1
#1 4
#取'one'列不带列名
#返回的数据类型是 pandas.Series
pd.one
# 0 1
#1 4
#Name: one, dtype: int32
#取'one'列不带列名
#返回的数据类型是 pandas.Series
pd['one']
# 0 1
#1 4
#Name: one, dtype: int32
#取所有行,'one'列,不带列名
#返回的数据类型是 pandas.Series
pd.iloc[:,0]
# 0 1
#1 4
#Name: one, dtype: int32
#取所有行,'one'列,不带列名
#返回的数据类型是 pandas.Series
pd.loc[:,'one']
# 0 1
#1 4
#Name: one, dtype: int32
print("panda[['one']]:\n",panda[['one']],"\n\npanda.loc[:,['one']]:\n",panda.loc[:,['one']],"\n\n"
,"panda.iloc[:,0]:\n",panda.iloc[:,0],"\n\n","panda.one:\n",panda.one,"\n\n","panda['one']:\n",panda['one'],"\n\n","panda.loc[:,'one']:\n",panda.loc[:,'one'])