我有一个非常大的表,它遵循这些结构(我在这里简化了它):
产品线名称数量单位成本PEPE10000 LUCIA4UD8PEPEE20000SANTIAGO7UD5.5PEPE30000MARIANGELES10KG6ANTONIO10000NAIARA4KG8ANTONIO20000TONI7KG3VANESA1000LUCIA4UD8VANESA200000SANTIAGO7KG8VANESA30000TONI10KG3VANESA40000GINES4KG8
我需要为每个产品添加一个新名称(dany),因此该表如下所示:
姓名:丹妮;quantity:15; 单位:升;成本:2
结果是:
产品线名称数量单位成本PEPE100000LUCIA4UD8PEPEE20000SANTIAGO7UD5.5PEPE300000MARIANGELES10KG6PEPEPE40000DANY15L2ANTONIO10000NAIAR2KG8ANTONIO300000DANY15L2VANEA10000LUCIA4UD8VANEA20000SANTIAGO7KG8VANESA300000TONI10KG3VANESA40000GINES4KG8VANESA50000DANY15L2
事实上,“行”必须是现有行的后续编号(例如,如果产品的姓是30000(见pepe),dany的行必须是40000,如果产品的姓是20000,dany的行必须是30000(见antonio))。
我可以使用sql(dbeaver或microsoftaccess)或r来实现,我正在考虑一个r循环或一个带有count()的sql复杂查询,但是如果您能提供一些帮助,我将不胜感激。
非常感谢。
2条答案
按热度按时间tpgth1q71#
您可以使用
insert
:如果不想修改表,只想查看数据,可以运行查询:
wwtsj6pe2#
我相信sql可能是更好的地方,但是如果您想知道如何在r中实现它,我假设您已经将相关数据下载到
dat
.(在这三个例子中
order
/arrange
仅用于演示,生产中不需要。)底部r
潮人
数据表
我不知道怎么去
data.table:::merge.data.table
允许没有连接键的笛卡尔连接,所以我强制base
-这是我的案子。我可以在两个框架中添加一个虚拟的单值列,然后作为另一个选项连接到该列。