我正在try 使用PANADS来管理我从API中提取的数据.数据有一列是嵌套列表,我正在try 将其提取到他们自己的列中.

到目前为止,数据是这样的:

id mail displayName propertiesRegistered createdDateTime
00000000-0000-0000-0000-000000000000 joe.user@email.com User, Joe ['address', 'mobilePhone', 'officePhone'] 2023-08-19T15:00:00.00Z

所需的输出将如下所示:

id mail displayName address mobilePhone officePhone homePhone createdDateTime
00000000-0000-0000-0000-000000000000 joe.user@email.com User, Joe TRUE TRUE TRUE FALSE 2023-08-19T15:00:00.00Z

我try 过扩展、系列和透视表,但似乎都搞不清楚.我甚至不确定我的问题在我的搜索中措辞是否正确.很多人和示例都将数据放在额外的行中,这是我能够做到的,但将其放在一行中是理想的.

如有任何帮助,我们不胜感激.

推荐答案

您可以使用str.get_dummies:

valid_properties = ['address', 'mobilePhone', 'officePhone', 'homePhone']

df = df.join(df.pop('propertiesRegistered').agg('|'.join).str.get_dummies()
               .reindex(columns=valid_properties, fill_value=0)
               # or astype(bool) for real booleans
               .replace({1: 'TRUE', 0: 'FALSE'})
            )

或者crosstab分:

s = df.pop('propertiesRegistered').explode()
df = df.join(pd.crosstab(s.index, s)
               .reindex(columns=valid_properties, fill_value=0)
               .gt(0)
             )

输出:

                                      id                 mail displayName          createdDateTime address mobilePhone officePhone homePhone
0  00000000-0000-0000-0000-000000000000   joe.user@email.com   User, Joe   2023-08-19T15:00:00.00Z    TRUE        TRUE        TRUE     FALSE

Python相关问答推荐

try 使用tensorFlow.keras.models时optree Import错误

在Python中,如何才能/应该使用decorator 来实现函数多态性?

创建带有二维码的Flask应用程序,可重定向到特定端点

拆分pandas列并创建包含这些拆分值计数的新列

如何在Python中使用时区夏令时获取任何给定本地时间的纪元值?

如何根据日期和时间将状态更新为已过期或活动?

替换字符串中的多个重叠子字符串

无法通过python-jira访问jira工作日志(log)中的 comments

对所有子图应用相同的轴格式

在极性中创建条件累积和

Python+线程\TrocessPoolExecutor

Pandas GroupBy可以分成两个盒子吗?

基于形状而非距离的两个numpy数组相似性

Python Tkinter为特定样式调整所有ttkbootstrap或ttk Button填充的大小,适用于所有主题

在pandas/python中计数嵌套类别

如何使用OpenGL使球体遵循Python中的八样路径?

(Python/Pandas)基于列中非缺失值的子集DataFrame

如何找出Pandas 图中的连续空值(NaN)?

搜索按钮不工作,Python tkinter

巨 Python :逆向猜谜游戏