python - 在 python 中使用 pandas 将日志或文本文件转换为数据框
问题描述
我有一个文本文件,其中我要存储的数据在我要分配的每个名称之后按顺序存在。基本上,我想要一个如下所示的文本文件:
Fred
quiz1, B
quiz2, C
Suzie
quiz1, A
quiz2, B
并创建一个如下所示的数据框
姓名、作业、成绩
Fred、quiz1、B
Fred、quiz1、C
Suzie、quiz1、A
Suzie、quiz2、B
'''
解决方案
这里有一个例子:
from io import StringIO
import pandas as pd
import numpy as np
data = """
Fred
quiz1, B
quiz2, C
Suzie
quiz1, A
quiz2, B
Susy
quiz1, E
quiz2, F
"""
df = pd.read_csv(StringIO(data),sep=',', names=['Assignment', 'Grade','Name'], header=None)
df['Name']= np.where(df['Grade'].isnull(),df['Assignment'],np.NaN)
df['Name'] = df['Name'].ffill()
print(df.dropna(subset=['Grade']))
推荐阅读
- c# - 在 Azure 函数中加密服务总线连接字符串
- django - Django Rest FrameWork 中的“many = True”有什么作用?
- javascript - 如何在悬停覆盖图像中包含文本 - 仅限 HTML、CSS、JavaScript
- python - 当我在 Django 上启动服务器时,这个问题怎么办?
- dynamics-crm - crm 2016 按类型代码获取实体逻辑名称?
- excel - VBA 跳转到下一列
- javascript - RegExp 与 lastIndex 匹配导致无限循环
- dns - AWS Route53 上的 MXE 记录
- php - 从选择查询中排除变量
- ios - 如何在目标c中的tableview上方实现一个选择/取消选择所有按钮?