脚本专栏 
首页 > 脚本专栏 > 浏览文章

Pandas把dataframe或series转换成list的方法

(编辑:jimmy 日期: 2024/11/19 浏览:3 次 )

把dataframe转换为list

输入多维dataframe:

 df = pd.DataFrame({'a':[1,3,5,7,4,5,6,4,7,8,9], 'b':[3,5,6,2,4,6,7,8,7,8,9]})

把a列的元素转换成list:

# 方法1df['a'].values.tolist() # 方法2df['a'].tolist()

把a列中不重复的元素转换成list:

df['a'].drop_duplicates().values.tolist()

输入一维dataframe:

df = pd.DataFrame([3, 5, 6, 2, 4, 6, 7, 8, 7, 8, 9])

转换成list[list]:

df.values.tolist()

把series转换为list

Series.tolist()

Python 将Dataframe转化为字典(dict)

有时候我们需要Dataframe中的一列作为key,另一列作为key对应的value。比如说在已知词频画词云的时候,这个时候需要传入的数据类型是词典。

import pandas as pd
data = pd.DataFrame([['a',1],['b',2]], columns=['key','value'])
dict1 = dict(zip(data['key'],data['value']))
data
Out[25]: 
  key value
0  a   1
1  b   2

输出结果:

dict1
Out[8]: {'a': 1, 'b': 2}

Dataframe有自带的方法可以将Dataframe转换为字典的格式。但是,这种方法是复合的字典,每一列以dataframe的index为key而不是某一列的值,每一列的值作为字典的value,然后再将所有的列放在一个字典里面。

data.to_dict()

Out[10]: {'key': {0: 'a', 1: 'b'}, 'value': {0: 1, 1: 2}}

其实我们把key列作为index,再用上面的方法也可以实现一列为字典key,另一列为value。

dict2 = data.set_index('key').to_dict()

在使用时需要注意的是,这种方法输出的字典也是复合的字典,有一个用做字典value的列的列名。

dict2

Out[24]: {'value': {'a': 1, 'b': 2}}

上一篇:python中pandas库中DataFrame对行和列的操作使用方法示例
下一篇:Django 构建模板form表单的两种方法
一句话新闻
一文看懂荣耀MagicBook Pro 16
荣耀猎人回归!七大亮点看懂不只是轻薄本,更是游戏本的MagicBook Pro 16.
人们对于笔记本电脑有一个固有印象:要么轻薄但性能一般,要么性能强劲但笨重臃肿。然而,今年荣耀新推出的MagicBook Pro 16刷新了人们的认知——发布会上,荣耀宣布猎人游戏本正式回归,称其继承了荣耀 HUNTER 基因,并自信地为其打出“轻薄本,更是游戏本”的口号。
众所周知,寻求轻薄本的用户普遍更看重便携性、外观造型、静谧性和打字办公等用机体验,而寻求游戏本的用户则普遍更看重硬件配置、性能释放等硬核指标。把两个看似难以相干的产品融合到一起,我们不禁对它产生了强烈的好奇:作为代表荣耀猎人游戏本的跨界新物种,它究竟做了哪些平衡以兼顾不同人群的各类需求呢?
友情链接:杰晶网络 DDR爱好者之家 南强小屋 黑松山资源网 白云城资源网 SiteMap