Skip to main content
 首页 » 编程设计

python之读取 csv 后从单元格切片的数据帧

2025年05月04日10cloudgamer

我正在使用 CSV 和 DataFrames 从 Twitter 分析中读取数据。

我想从某个单元格中提取 url

输出是这个过程如下

tweet number tweet id               tweet link              tweet text 
1            1.0086341313026E+018   "tweet link goes here"  tweet text goes here https://example.com" 

我怎样才能将这个“tweet 文本”切片以获取它的 url?我无法使用 [-1:-12] 对其进行切片,因为有许多推文具有不同的字符数。

请您参考如下方法:

我相信你想要:

print (df['tweet text'].str[-12:-1]) 
0    example.com 
Name: tweet text, dtype: object 

更通用的解决方案是 regex与 str.findall获取所有链接的列表,如有必要,首先通过使用 str[0] 进行索引来选择:

pat = r'(?:http|ftp|https)://(?:[\w_-]+(?:(?:\.[\w_-]+)+))(?:[\w.,@?^=%&:/~+#-]*[\w@?^=%&/~+#-])?' 
 
print (df['tweet text'].str.findall(pat).str[0]) 
0    https://example.com 
Name: tweet text, dtype: object