在Python中更改CSV中的列

在Python中更改CSV中的列,python,pandas,dataframe,csv,Python,Pandas,Dataframe,Csv,如何在CSV中选择列“id”并向其中添加字符串 列ID是一个类似“5474548384”的数字。 我想选择此列并将其更改为添加以下内容:'https://twitter.com/twitter/statuses/'以创建链接。CSV的截图在这篇文章的底部 关于如何在我的CSV中更改此列,有什么建议吗 import requests import expansions import os import json import pandas as pd import csv import sys i

如何在CSV中选择列“id”并向其中添加字符串

列ID是一个类似“5474548384”的数字。 我想选择此列并将其更改为添加以下内容:'https://twitter.com/twitter/statuses/'以创建链接。CSV的截图在这篇文章的底部

关于如何在我的CSV中更改此列,有什么建议吗

import requests
import expansions
import os
import json
import pandas as pd
import csv
import sys
import time


bearer_token = "removed for privacy "

search_url = "https://api.twitter.com/2/tweets/search/all"

query_params = {'query': '("covid") i -is:retweet -is:verified -baby -lotion -shampoo lang:en has:geo place_country:US',
                'tweet.fields':'created_at,lang,text,geo,author_id,id,public_metrics,referenced_tweets',
                'expansions':'geo.place_id,author_id', 
                'place.fields':'contained_within,country,country_code,full_name,geo,id,name,place_type',
                'user.fields':'description,username,id',
                'start_time':'2021-02-27T00:00:01.000Z',
                'end_time':'2021-02-27T23:30:00.000Z',
                'max_results':'10'}

def create_headers(bearer_token):
    headers = {"Authorization": "Bearer {}".format(bearer_token)}
    return headers


def connect_to_endpoint(url, headers, params):
    response = requests.request("GET", search_url, headers=headers, params=params)

    if response.status_code != 200:
        raise Exception(response.status_code, response.text)
    return response.json()


def main():
    headers = create_headers(bearer_token)
    json_response = connect_to_endpoint(search_url, headers, query_params)

    json_response = expansions.flatten(json_response) 
    df = pd.json_normalize(json_response['data'])
    drop = df['author.description'].str.contains('news')
    
    result = df[-drop]
    result.to_csv("mydata.csv", encoding="utf-8-sig")
    
if __name__ == "__main__":
    main()


获取数据帧后,可以添加如下前缀:

prefix = 'https://twitter.com/twitter/statuses/'
df['id'] = prefix + df['id'].astype(str)

太棒了,谢谢!