r - 通过R从字符串中提取数据
问题描述
我有一个数据框,它具有列的第一类。下面提到的类别栏中的数据:
Application Platforms|Real Time|Social Network Media
Apps|Games|Mobile
Curated Web
Software
Games
Biotechnology
Analytics
Mobile
E-Commerce
Entertainment|Games|Software
Networking|Real Estate|Web Hosting
类别列表是由竖线(竖线|)分隔的多个子扇区的列表。我想提取主扇区,它是竖线(“|”)之前的第一个字符串。
这意味着我希望输出应该是,
Application Platforms
Apps
Curated Web
Software
Games
Biotechnology
Analytics
Mobile
E-Commerce
Entertainment
Networking
请帮助我如何通过使用任何函数来做到这一点,我尝试过使用 stringr 包函数。
解决方案
使用strsplit
:
category1 <- strsplit(df$category, "|", fixed = TRUE)
df$category <- sapply(category1, `[[`, 1) # or, purrr::map_chr(category1, 1)
sub
我认为,此解决方案使您的意图比使用更清晰。再说一次,它需要一条额外的线。
推荐阅读
- node.js - 如何在 Google Cloud 服务器中触发实时数据库字段(不在 Firebase 的功能中)
- jquery - 将鼠标悬停在 HTML 元素上时如何操作 P5.JS Sketch
- ruby - 在while循环ruby中乘以数组元素
- r - Rcpp中的布尔向量子集向量
- android - BindingAdapter 只工作一次,使用 notifyPropertyChanged 后不起作用
- google-sheets - 如何使用 QUERY 函数仅返回列表中的最新条目?
- android - 用户选择时如何在recyclerview中获取项目的ID
- c - 如何使用 pcap_sendpacket 发送 ARP 回复
- android - 当我尝试从中获取数据时,ViewModel 返回清除对象
- perl - Perl 哈希名称(在声明时)可以在同一个哈希中使用吗?