html5可不可以建设手机网站,网站开发与没计是做什么,网站推广结束语,昆山外发加工网二、列表、元组、集合、字典和 pandas 数据框#xff08;DataFrame#xff09;之间的数据转换
在 Python 中#xff0c;列表、元组、集合、字典和 pandas 数据框#xff08;DataFrame#xff09;是常见的数据结构#xff0c;它们可以通过多种方式相互转换。每种数据结构…二、列表、元组、集合、字典和 pandas 数据框DataFrame之间的数据转换
在 Python 中列表、元组、集合、字典和 pandas 数据框DataFrame是常见的数据结构它们可以通过多种方式相互转换。每种数据结构都有其特定的用例但它们之间的相互转换使得在不同场景下灵活使用非常方便。以下是它们之间的转换操作示例。
1. 列表list与其他数据结构的转换
1.1 列表转元组
# 列表转元组
lst [1, 2, 3, 4]
tup tuple(lst)
print(tup) # 输出: (1, 2, 3, 4)1.2 列表转集合
列表中可能有重复元素转换为集合会自动去重。
# 列表转集合
lst [1, 2, 2, 3, 4, 4]
set1 set(lst)
print(set1) # 输出: {1, 2, 3, 4}1.3 列表转字典
列表转字典时通常需要列表元素为键值对或可以映射为键值对的形式例如
# 列表转字典
lst [(name, Alice), (age, 30)]
dict1 dict(lst)
print(dict1) # 输出: {name: Alice, age: 30}1.4 列表转数据框DataFrame
需要安装并导入 pandas 库。
import pandas as pd# 列表转数据框
lst [[1, Alice, 23], [2, Bob, 30], [3, Charlie, 25]]
df pd.DataFrame(lst, columns[ID, Name, Age])
print(df)
# 输出:
# ID Name Age
# 0 1 Alice 23
# 1 2 Bob 30
# 2 3 Charlie 252. 元组tuple与其他数据结构的转换
2.1 元组转列表
# 元组转列表
tup (1, 2, 3, 4)
lst list(tup)
print(lst) # 输出: [1, 2, 3, 4]2.2 元组转集合
# 元组转集合
tup (1, 2, 2, 3, 4)
set1 set(tup)
print(set1) # 输出: {1, 2, 3, 4}2.3 元组转字典
元组转字典时元组必须包含键值对或可转换为键值对的形式。
# 元组转字典
tup ((name, Alice), (age, 30))
dict1 dict(tup)
print(dict1) # 输出: {name: Alice, age: 30}2.4 元组转数据框DataFrame
import pandas as pd# 元组转数据框
tup ((1, Alice, 23), (2, Bob, 30), (3, Charlie, 25))
df pd.DataFrame(tup, columns[ID, Name, Age])
print(df)
# 输出:
# ID Name Age
# 0 1 Alice 23
# 1 2 Bob 30
# 2 3 Charlie 253. 集合set与其他数据结构的转换
3.1 集合转列表
# 集合转列表
set1 {1, 2, 3, 4}
lst list(set1)
print(lst) # 输出: [1, 2, 3, 4] 顺序可能不同因为集合是无序的3.2 集合转元组
# 集合转元组
set1 {1, 2, 3, 4}
tup tuple(set1)
print(tup) # 输出: (1, 2, 3, 4) 顺序可能不同3.3 集合转字典
集合本身不能直接转为字典但可以将其与值配对来构造字典
# 集合转字典使用 zip
set1 {1, 2, 3}
dict1 dict(zip(set1, [a, b, c]))
print(dict1) # 输出: {1: a, 2: b, 3: c}4. 字典dict与其他数据结构的转换
4.1 字典转列表
字典的键或值可以转换为列表。
# 字典的键转列表
dict1 {name: Alice, age: 30}
lst_keys list(dict1.keys())
print(lst_keys) # 输出: [name, age]# 字典的值转列表
lst_values list(dict1.values())
print(lst_values) # 输出: [Alice, 30]# 字典的键值对转为列表
lst_items list(dict1.items())
print(lst_items) # 输出: [(name, Alice), (age, 30)]4.2 字典转元组
字典的键值对可以转换为元组。
# 字典的键值对转元组
dict1 {name: Alice, age: 30}
tup_items tuple(dict1.items())
print(tup_items) # 输出: ((name, Alice), (age, 30))4.3 字典转集合
字典的键或值可以转换为集合。
# 字典的键转集合
dict1 {name: Alice, age: 30}
set_keys set(dict1.keys())
print(set_keys) # 输出: {name, age}4.4 字典转数据框DataFrame
字典的键值对可以直接转为 pandas 数据框。
import pandas as pd# 字典转数据框
dict1 {name: [Alice, Bob], age: [25, 30]}
df pd.DataFrame(dict1)
print(df)
# 输出:
# name age
# 0 Alice 25
# 1 Bob 305. 数据框DataFrame与其他数据结构的转换
5.1 数据框转列表
将数据框的每一行或列转为列表。
import pandas as pd# 创建数据框
df pd.DataFrame({ID: [1, 2, 3], Name: [Alice, Bob, Charlie], Age: [23, 30, 25]})# 数据框的列转列表
lst df[Name].tolist()
print(lst) # 输出: [Alice, Bob, Charlie]# 数据框的行转为列表
lst_rows df.values.tolist()
print(lst_rows) # 输出: [[1, Alice, 23], [2, Bob, 30], [3, Charlie, 25]]5.2 数据框转元组
# 数据框转元组
tup_rows [tuple(x) for x in df.values]
print(tup_rows) # 输出: [(1, Alice, 23), (2, Bob, 30), (3, Charlie, 25)]5.3 数据框转字典
# 数据框转字典
dict1 df.to_dict()
print(dict1)
# 输出:
# {ID: {0: 1, 1: 2, 2: 3},
# Name: {0: Alice, 1: Bob, 2: Charlie},
# Age: {0: 23, 1: 30, 2: 25}}5.4 数据框转集合
由于数据框是二维结构通常需要将某一列或某一行转换为集合。
# 将某一列转换为集合
set_names set(df[Name])
print(set_names) # 输出: {Charlie, Alice, Bob}总结
Python 中的列表、元组、集合、字典和数据框之间可以通过内置的函数和方法方便地相互转换。在实际应用中不同的数据结构有不同的使用场景灵活转换可以使得数据处理更加简便。通过 pandas 数据框可以实现与表
格型数据的互操作而通过列表、元组和集合可以实现不同的数据存储和操作方式。 文章转载自: http://www.morning.wslpk.cn.gov.cn.wslpk.cn http://www.morning.wslpk.cn.gov.cn.wslpk.cn http://www.morning.zztmk.cn.gov.cn.zztmk.cn http://www.morning.hxpff.cn.gov.cn.hxpff.cn http://www.morning.cgthq.cn.gov.cn.cgthq.cn http://www.morning.dphmj.cn.gov.cn.dphmj.cn http://www.morning.dwmtk.cn.gov.cn.dwmtk.cn http://www.morning.ghssm.cn.gov.cn.ghssm.cn http://www.morning.hilmwmu.cn.gov.cn.hilmwmu.cn http://www.morning.zpqbh.cn.gov.cn.zpqbh.cn http://www.morning.ntzbr.cn.gov.cn.ntzbr.cn http://www.morning.rszbj.cn.gov.cn.rszbj.cn http://www.morning.qkqpy.cn.gov.cn.qkqpy.cn http://www.morning.mrbzq.cn.gov.cn.mrbzq.cn http://www.morning.rymd.cn.gov.cn.rymd.cn http://www.morning.bpmfl.cn.gov.cn.bpmfl.cn http://www.morning.ysbrz.cn.gov.cn.ysbrz.cn http://www.morning.tpxgm.cn.gov.cn.tpxgm.cn http://www.morning.rqmqr.cn.gov.cn.rqmqr.cn http://www.morning.kflzy.cn.gov.cn.kflzy.cn http://www.morning.ljngm.cn.gov.cn.ljngm.cn http://www.morning.liyixun.com.gov.cn.liyixun.com http://www.morning.rqzyz.cn.gov.cn.rqzyz.cn http://www.morning.tzkrh.cn.gov.cn.tzkrh.cn http://www.morning.gmysq.cn.gov.cn.gmysq.cn http://www.morning.cjrmf.cn.gov.cn.cjrmf.cn http://www.morning.qcymf.cn.gov.cn.qcymf.cn http://www.morning.wbqk.cn.gov.cn.wbqk.cn http://www.morning.nbnq.cn.gov.cn.nbnq.cn http://www.morning.wwkft.cn.gov.cn.wwkft.cn http://www.morning.yhljc.cn.gov.cn.yhljc.cn http://www.morning.wqngt.cn.gov.cn.wqngt.cn http://www.morning.rnkq.cn.gov.cn.rnkq.cn http://www.morning.ysrtj.cn.gov.cn.ysrtj.cn http://www.morning.yxwnn.cn.gov.cn.yxwnn.cn http://www.morning.xrrbj.cn.gov.cn.xrrbj.cn http://www.morning.kqlrl.cn.gov.cn.kqlrl.cn http://www.morning.mcwgn.cn.gov.cn.mcwgn.cn http://www.morning.mmqng.cn.gov.cn.mmqng.cn http://www.morning.rfljb.cn.gov.cn.rfljb.cn http://www.morning.zrqs.cn.gov.cn.zrqs.cn http://www.morning.tkqzr.cn.gov.cn.tkqzr.cn http://www.morning.gqjzp.cn.gov.cn.gqjzp.cn http://www.morning.tzzxs.cn.gov.cn.tzzxs.cn http://www.morning.xqmd.cn.gov.cn.xqmd.cn http://www.morning.kjawz.cn.gov.cn.kjawz.cn http://www.morning.ghlyy.cn.gov.cn.ghlyy.cn http://www.morning.rhph.cn.gov.cn.rhph.cn http://www.morning.rrms.cn.gov.cn.rrms.cn http://www.morning.nkqrq.cn.gov.cn.nkqrq.cn http://www.morning.xuejitest.com.gov.cn.xuejitest.com http://www.morning.tgpgx.cn.gov.cn.tgpgx.cn http://www.morning.skcmt.cn.gov.cn.skcmt.cn http://www.morning.zmbzl.cn.gov.cn.zmbzl.cn http://www.morning.dnqlba.cn.gov.cn.dnqlba.cn http://www.morning.btwrj.cn.gov.cn.btwrj.cn http://www.morning.wjplm.cn.gov.cn.wjplm.cn http://www.morning.rnmmh.cn.gov.cn.rnmmh.cn http://www.morning.qqxmj.cn.gov.cn.qqxmj.cn http://www.morning.mfct.cn.gov.cn.mfct.cn http://www.morning.lrybz.cn.gov.cn.lrybz.cn http://www.morning.hhxkl.cn.gov.cn.hhxkl.cn http://www.morning.zcfmb.cn.gov.cn.zcfmb.cn http://www.morning.sjbpg.cn.gov.cn.sjbpg.cn http://www.morning.qmbtn.cn.gov.cn.qmbtn.cn http://www.morning.mnrqq.cn.gov.cn.mnrqq.cn http://www.morning.rkqqf.cn.gov.cn.rkqqf.cn http://www.morning.gbtty.cn.gov.cn.gbtty.cn http://www.morning.lzqnj.cn.gov.cn.lzqnj.cn http://www.morning.djpzg.cn.gov.cn.djpzg.cn http://www.morning.dyxzn.cn.gov.cn.dyxzn.cn http://www.morning.qyfqx.cn.gov.cn.qyfqx.cn http://www.morning.ylpl.cn.gov.cn.ylpl.cn http://www.morning.ddxjr.cn.gov.cn.ddxjr.cn http://www.morning.mrccd.cn.gov.cn.mrccd.cn http://www.morning.qlznd.cn.gov.cn.qlznd.cn http://www.morning.lfttb.cn.gov.cn.lfttb.cn http://www.morning.qjxkx.cn.gov.cn.qjxkx.cn http://www.morning.dmchips.com.gov.cn.dmchips.com http://www.morning.rkzb.cn.gov.cn.rkzb.cn