我正在尝试将简单的tuple [2]数据集转换为可用的熊猫格式。我将以用户数据集为例。
我的输入如下:
properties, value
username, 1
email, 2
created, 3
username, 4
email, 5
created, 6
每次“用户名”出现在第一列中时,下面的元组都属于该用户。我正在尝试将其转换为一种格式,其中每个用户都在单行中列出,其属性在列中。
所需的输出:
username, email, created
1, 2, 3
4, 5, 6
我已将输入文件加载到熊猫数据框df:
with open('input.csv', encoding='utf-16') as f:
df = pd.read_csv(f, sep=" :", engine='python', header=None, parse_dates=True)
然后我想我会使用pivot函数,但是我收到以下不确定的错误,我不确定如何解决:
ValueError: Index contains duplicate entries, cannot reshape
有人可以在正确的方向帮助我吗?
首先,假设用户名,电子邮件和创建的对象是列表对象。每当创建用户时,每个列表的索引都会得到满足。
username = list()
email = list()
created = list()
# Add some elements for first user
username.append('1')
email.append('2')
created.append('3')
# Add some elements for second user
username.append('4')
email.append('5')
created.append('6')
然后,您要做的就是创建带有列表名称的列并正确放置数据。
df = pd.DataFrame(list(zip(username, email, created)), columns=['Username', 'Email', 'Created'])
# Printing without indexes
print(df.to_string(index=False))
打印DataFrame的结果将是:
Username Email Created
1 2 3
4 5 6