Python

[Python]高阶-玩转数据类型转换

2020-01-24  本文已影响0人  DDuncan
常用的格式转换函数

一、Python、NumPy、Pandas数据类型互转

行为输入 列为输出
————> str list tuple set dict
(自定义索引(键))
str / list(str) tuple(str) set(str)
list ''.join(list) / tuple(list) set(list)
tuple list(tuple) / set(tuple)
set ''.join(set) list(set) tuple(set) /
dict /
ndarray np.array.tolist() tuple(np.array) set(np.array)
pd.Series
pd.DataFrame 1)df.to_dict(orient='dict')
2)df.to_dict(orient='list')
3)df.to_dict(orient='series')
4)df.to_dict(orient='records')

右续上表:

行为输入 列为输出
————> ndarray pd.Series(data, index) pd.DataFrame(dict)
(dict含索引)
str
list np.array(list) pd.Series(list, index= ['one', 'two', 'three', 'four', 'five'])
#list是多个数据(包括不同类型)的列表(该数据本身可以是列表==列表的嵌套==二维数组)
pd.DataFrame(list, index = ['one', 'two', 'three', 'four', 'five'], columns = ['year', 'state', 'pop'])
#本质==热图 二维数据表
tuple
set np.array(set)
dict pd.Series(dict)
#dict中的key充当Series的索引index
pd.DataFrame(dict)
#key 充当DataFrame 的 columns
ndarray / pd.DataFrame(np.array, index = ['one', 'two', 'three', 'four', 'five'], columns = ['year', 'state', 'pop'])
pd.Series 1)pd.Series.as_matrix(series)
2)series.as_matrix()
#series表示某个Series类型的数据
/
pd.DataFrame 1)pd.DataFrame.as_matrix(df)
2)df.as_matrix()
3)df.values
4)np.array(df)
5)df.as_matrix(['column'])
/

二、函数传递的参数类型

解决方法

逐个元素修改
具体数据类型
可哈希的元素 int、float、str、tuple
不可哈希的元素 list、set、dict
  1. 因为 list 在它的生命期内,是可变的,你可以在任意时间改变其内的元素值。
  2. 所谓元素可不可哈希,意味着是否使用 hash 进行索引
  3. list 不使用 hash 进行元素的索引,自然它对存储的元素没有可哈希的要求;而 tuple 使用 hash 值进行索引。
上一篇下一篇

猜你喜欢

热点阅读