Python将一列数据转换为多列

时间:2016-04-18 17:00:16

标签: python

我的问题是: 我有一个看起来像这样的数据集(让我们说有一个名为&#34的变量; ChatConversations"另一个名为CustomerID),并且每个客户都有聊天文本。假设有1000个客户,所以我的数据集有1000行,有2列,一个用于CustomerID,另一个用于Chattranscript。假设每个客户每个都有2个句子。所以,我想创建一个新的数据集/文件,其中有2000个句子相互附加,就像一个段落,然后我将阅读并进行文本挖掘。

希望我的问题很清楚

Input Data Like below

输出数据如下: 我喜欢这个服务.IT需要时间。问题已经解决了,所以我没有抱怨。代理人无法理解我所说的.Grett工作没有抱怨。可以做得更好(基本上所有的价值都是&#34 ; ChatCOnversation"变量需要连接在一起才能创建段落/文本文件类的东西

1 个答案:

答案 0 :(得分:1)

您可以通过将列标题和每个数据行的列表压缩在一起并为列表中的那些数据行创建每行创建一个字典,如下所示:

headlines = ["India", "Asia", "Singapore", "Malaysia", "Nepal", "China"]
dict_list = []
with open("my_file.csv") as csv_file:
    for line in csv_file:
        dict_list.append(dict(zip(hl, [item.strip() for item in line.split(",")])))  
print(*dict_list, sep="\n")  # print one dictionary per line

更新

你可能想要这样的东西:

with open("input.csv") as in_file, open("output.txt", "w") as out_file:
   for line in in_file:
        content = line.split(",", 1)[1].strip()
        print(content, file=out_file)