簡體   English   中英

在Python 3中使用Pandas將數據字典到CSV

[英]Dictionary data to CSV with Pandas in Python 3

我下面的代碼將帶有兩列的CSV轉換為字典:

import pandas as pd

df = pd.read_csv('file.csv', sep=',')
dct = df.groupby('group').ip.apply(lambda x: x.tolist()).to_dict()

print(dct)
{'A': ['192.168.1.1', '192.168.1.4'],
 'B': ['192.168.1.2', '192.168.1.5'],
 'C': ['192.168.1.3', '192.168.1.6']}

我將如何做相反的事情? 我要這本字典:

dct = {'A': ['192.168.1.1', '192.168.1.4'],
 'B': ['192.168.1.2', '192.168.1.5'],
 'C': ['192.168.1.3', '192.168.1.6']}

並希望將其轉換為CSV並帶有兩列,如下所示:

ip,group
192.168.1.1,A
192.168.1.2,B
192.168.1.3,C
192.168.1.4,A
192.168.1.5,B
192.168.1.6,C

用戶@cᴏʟᴅsᴘᴇᴇᴅ在第一部分幫助了我,而熊貓此時此刻超越了我的python技能。 謝謝你的幫助!

pd.DataFrame + melt

df = pd.DataFrame(dct).melt(var_name='group', value_name='ip')
print(df)
  group           ip
0     A  192.168.1.1
1     A  192.168.1.4
2     B  192.168.1.2
3     B  192.168.1.5
4     C  192.168.1.3
5     C  192.168.1.6

使用df.to_csv保存為CSV:

df.to_csv('out.csv', sep=',', index=False)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM