数据类型转换篇
python数据类型之间转换篇
1.前言使用python处理数据时,不可避免的要使用数据类型之间的转换。简单的诸如int、float、string之间的转换;更有数组array、列表list、数据框Dataframe之间的转换。熟知一些处理技巧,更能提升自己的工作效率。
夏SUMMER2.简单数据类型转换
01
其他数据类型转换为int函数格式:int(x [,base])
例:int("18")
注:可以转换的包括String类型和其他数字类型,但是会丢失精度。
02
其他数据类型转换为float函数格式:float(x)
例:float(1)或者float("1")
注:可以转换String和其他数字类型,不足的位数用0补齐,例如1会变成1.0。
03
其他数据类型转换为string函数格式:str(x)
例:str(1)
注:将数字转化为String。
3.复杂数据类型之间的转换在大数据分析中,常用的两个数据分析包numpy和pandas,而pandas正是基于numpy构建的含有更高级数据结构和工具的数据分析包。在实际的工程中,经常遇到的问题就是numpy的ndarray数据结构与pandas的series和dataframe数据结构之间的互相转换问题。
01
对list转换的操作#coding:utf-8
import numpy as np
import pandas as pd
#创建list
data=[[2016,'hello',90],
[2017,'world',70],
[2018,'nice',80]]
#把list转为series
ser = pd.Series(data,
index=['one','two','three'])
#把seires转为matrix
mat = ser.as_matirx()
#list转为Dataframe
df=np.Dataframe(data,
index=['one','two','three'],
columns=['year','flag','status'])
#dataframe转为ndarray
array1 = df.as_matrix()
array2 = df.values
array3 = np.array(df)
array_1 = df.as_matrix(['status'])
02
对dict转换的操作#coding:utf-8
import numpy as np
import pandas as pd
#创建dict
data = {'year':[2016,2017,2018],
'flag':['hello','world','nice'],
'status':[90,70,80]}
#把dict转为seires;
#不指定index时,data的key则会为Series的index
ser = pd.Series(data)
#把dict转为Dataframe;
#不指定columns,data的key充当DataFrame的columns
df = pd.DataFrame(data)
03
对array转换的操作#coding:utf-8
import numpy as np
import pandas as pd
#创建数组array
data=np.array([[2016,'hello',90],
[2017,'world',70],
[2018,'nice',80]])
#数组转为DataFrame
df = pd.DataFrame(data,
index=['one','two','three'],
columns=['year','flag','status'])
#DataFrame转为矩阵(数组)
array1 = df.as_matrix()
array2 = df.values
array3 = np.array(df)
#将某一列转为数组
array_1 = df.as_matrix(['status'])
结语
带你过夏天
因为我有幸孤身独处,虽然我从来并不孤独,
我只是独自一人而已,独自生活在稠密的思想之中,
因为我有点狂妄,是无限和永恒中的狂妄分子,
而无限和永恒也许就喜欢我这样的人。