Python 熊猫,从字典到熊猫再到绘图布尔
我是新的Python程序员, 我想从这个Python 熊猫,从字典到熊猫再到绘图布尔,python,pandas,Python,Pandas,我是新的Python程序员, 我想从这个 dic = {"word1": ["a","b","c"], "word2": ["b", "d", "e"], "word3": ["a", "f", "c"]} 要创建此数据帧对象,请执行以下操作 我试过这样的代码 df = pd.DataFrame(index=["a","b","c","d","e","f"], columns=[]) for i in result: print("i",i) print("v", v) df2 = pd.D
dic = {"word1": ["a","b","c"], "word2": ["b", "d", "e"], "word3": ["a", "f", "c"]}
要创建此数据帧对象,请执行以下操作
我试过这样的代码
df = pd.DataFrame(index=["a","b","c","d","e","f"], columns=[])
for i in result:
print("i",i)
print("v", v)
df2 = pd.DataFrame(i)
df.append(df2)
请帮助我如何编码此首先将
dict
转换为Series
,然后使用+DataFrame
构造函数,最后转换为布尔值:
d = {"word1": ["a","b","c"], "word2": ["b", "d", "e"], "word3": ["a", "f", "c"]}
s = pd.Series(d)
另一个解决方案是通过
|
连接,默认分隔符是什么:
首先将
dict
转换为Series
,然后使用+DataFrame
构造函数,最后转换为布尔值:
d = {"word1": ["a","b","c"], "word2": ["b", "d", "e"], "word3": ["a", "f", "c"]}
s = pd.Series(d)
另一个解决方案是通过
|
连接,默认分隔符是什么:
这里有一种使用pd.get\u dummies的方法:
import pandas as pd
d = {"word1": ["a","b","c"], "word2": ["b", "d", "e"], "word3": ["a", "f", "c"]}
df = pd.DataFrame.from_dict(d, orient='index')
df['values'] = df.values.tolist()
df = df.drop(df.columns[:], 1)\
.join(pd.get_dummies(df['values'].apply(pd.Series).stack()).sum(level=0))\
.astype(bool)
结果
a b c d e f
word1 True True True False False False
word2 False True False True True False
word3 True False True False False True
解释
- 为每个单词创建一系列列表
- 通过一些操作将
应用于本系列pd.get_dummies
- 出于显示目的,将类型从
转换为int
bool
- 这里有一种方法可以使用
pd.get\u dummies
:
import pandas as pd
d = {"word1": ["a","b","c"], "word2": ["b", "d", "e"], "word3": ["a", "f", "c"]}
df = pd.DataFrame.from_dict(d, orient='index')
df['values'] = df.values.tolist()
df = df.drop(df.columns[:], 1)\
.join(pd.get_dummies(df['values'].apply(pd.Series).stack()).sum(level=0))\
.astype(bool)
结果
a b c d e f
word1 True True True False False False
word2 False True False True True False
word3 True False True False False True
解释
- 为每个单词创建一系列列表
- 通过一些操作将
应用于本系列pd.get_dummies
- 出于显示目的,将类型从
转换为int
bool