【问题标题】:How to organize Twitter data of CSV in PhpMyAdmin如何在 PhpMyAdmin 中组织 CSV 的 Twitter 数据
【发布时间】:2017-11-15 18:15:59
【问题描述】:

我正在开发一个应用程序,我需要在 MySQL 数据库中存储推文集合以及推文 ID、推文日期、语言和用户名等属性。

这是我的目标图片: https://i.imgur.com/1EC3ICc.png

为此,我在 python 中创建了一个程序,它将 Twitter 上的 100 多条推文收集到一个 JSON 文件中。然后,我使用 Microsoft Excel 将 JSON 文件转换为 CSV 文件。在此之后,我将 PHPMyAdmin 中的 CSV 文件作为表格导入,得到以下结果:https://i.imgur.com/tLkIA0T.png (10 行 x 185 列)

上面的问题是一些推文有更多的数据,例如媒体,这导致数据扩展到多个列。

我如何快速清理此表格,以便表格中只有我想要的属性?我是否需要从头开始并从 Python 代码开始工作,还是可以从 Table/CSV 文件中清除?

【问题讨论】:

    标签: python mysql csv twitter


    【解决方案1】:

    如果 Tweets 解析为 JSON 格式,而你只需要一些字段,我建议你使用 JSON 模块来解析需要的字段,并使用 Pandas 模块将它们转换为结构化表格,以便将其写入 MySQL,例如:

    import json
    import pandas as pd
    
    #Open and read the text file where all the Tweets are
    with open('tweets.txt') as f:
        tweets = f.readlines()
    #Convert the read Tweets into JSON object
    tweets_json = [json.loads(tweet) for tweet in tweets]
    #Convert the list of Tweets into a structured dataframe
    df = pd.DataFrame(tweets_json)
    #Finally choose the attributes you need
    df = df[['created_at', 'id', ...]]
    #To write table into MySQL
    df.to_sql(...)
    

    【讨论】:

    • 感谢苏莱曼! Omo dada,我很快就会试试这个,让你知道它是如何工作的。
    • 我不知道您的解决方案是否有效,因为我偶然发现了实现您的代码的问题:stackoverflow.com/questions/47334968/… 但它似乎是一个很好的解决方案,我感谢您的时间。谢谢!
    猜你喜欢
    • 2015-07-22
    • 1970-01-01
    • 2019-04-21
    • 2018-09-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-06-20
    • 1970-01-01
    相关资源
    最近更新 更多