在Laravel中我们可以设置如下关系:
class User {
public function items()
{
return $this->belongsToMany('Item');
}
}
Run Code Online (Sandbox Code Playgroud)
允许我们为用户获取数据透视表中的所有项:
Auth::user()->items();
Run Code Online (Sandbox Code Playgroud)
但是,如果我想得到相反的结果呢?并获得用户尚未拥有的所有项目.所以不要在数据透视表中.
有一个简单的方法吗?
我试图看看我是否可以使用LINQ来解决我遇到的问题.我有一个包含Enum(TypeCode)和User对象的项目集合,我需要将其展平以显示在网格中.这很难解释,所以让我举一个简单的例子.
集合有这样的项目:
TypeCode | User
---------------
1 | Don Smith
1 | Mike Jones
1 | James Ray
2 | Tom Rizzo
2 | Alex Homes
3 | Andy Bates
Run Code Online (Sandbox Code Playgroud)
我需要输出为:
1 | 2 | 3
Don Smith | Tom Rizzo | Andy Bates
Mike Jones | Alex Homes |
James Ray | |
Run Code Online (Sandbox Code Playgroud)
感谢任何可以帮助我的人!我尝试使用foreach这样做,但是我不能这样做,因为我要在foreach中将新项目插入到集合中,从而导致错误.
我有一个PostgreSQL函数(或表),它给我以下输出:
Sl.no username Designation salary etc..
1 A XYZ 10000 ...
2 B RTS 50000 ...
3 C QWE 20000 ...
4 D HGD 34343 ...
Run Code Online (Sandbox Code Playgroud)
现在我想要输出如下:
Sl.no 1 2 3 4 ...
Username A B C D ...
Designation XYZ RTS QWE HGD ...
Salary 10000 50000 20000 34343 ...
Run Code Online (Sandbox Code Playgroud)
这该怎么做?
我想将它从一个数据库更改为另一个数据库.
在数据透视表上下文菜单上似乎没有任何选项可以执行此操作
我偶然发现了大熊猫,它看起来很适合我想做的简单计算.我有一个SAS背景,并且认为它取代了proc freq - 看起来它将扩展到我将来可能要做的事情.不过,我只是似乎无法让我的头围绕一个简单的任务(我不知道如果我应该来看看pivot/crosstab/indexing-我是否应该有一个Panel或DataFrames等...).有人可以给我一些关于如何做以下事项的指示:
我有两个CSV文件(一个用于2010年,一个用于2011年 - 简单的事务数据) - 列是类别和金额
2010:
AB,100.00
AB,200.00
AC,150.00
AD,500.00
Run Code Online (Sandbox Code Playgroud)
2011:
AB,500.00
AC,250.00
AX,900.00
Run Code Online (Sandbox Code Playgroud)
它们被加载到单独的DataFrame对象中.
我想做的是获取类别,类别的总和以及类别的频率,例如:
2010:
AB,300.00,2
AC,150.00,1
AD,500.00,1
Run Code Online (Sandbox Code Playgroud)
2011:
AB,500.00,1
AC,250.00,1
AX,900.00,1
Run Code Online (Sandbox Code Playgroud)
我无法弄清楚我是否应该使用pivot/crosstab/groupby/an index
等...我可以得到总和或频率 - 我似乎无法得到两者......它变得有点复杂,因为我想这样做一个月一个月,但我想如果有人会如此友好地指出我正确的技术/方向,我将能够从那里去.
我有一个用户信息的遗留表(仍在使用中),我无法改变结构 -
id name value
------------------------------
0 timezone Europe/London
0 language en
0 country 45
0 something x
1 timezone Europe/Paris
1 language fr
1 country 46
Run Code Online (Sandbox Code Playgroud)
时区/语言/国家等只是名称的例子,它们可以是变量/除了该列的行之外没有唯一的有限列表
我需要一个可以返回的MySQL兼容的SQL查询 -
id timezone language country something
---------------------------------------------------
0 Europe/London en 45 x
1 Europe/Paris fr 46
Run Code Online (Sandbox Code Playgroud)
我已经查看了关于将数据库中的数据库功能隐藏到MySQL中的stackoverflow的各种答案,类似但是它们似乎都不匹配使用来自同一个表的列中的唯一行值的变量列名别名的情况.虽然我睡得很少,所以他们都开始变得有点模糊,提前道歉.
我能找到的最近的将是使用准备好的语句/sf/answers/69026191/,它将首先从名称列中获取所有可能/唯一值并构建一个使用CASE WHEN和/或多个子SELECT或JOIN上的查询相同的表查询.
我能想到的替代方法是获取该用户id的所有行并在for循环中在应用程序本身中处理它们,或者尝试将名称限制为有限量并使用sub- SELECTs/JOINs.但是,如果添加新名称,第二个选项并不理想,我必须重新访问此查询.
请告诉我,我错过了一些明显的东西
我有一个pandas DataFrame,例如:
x = DataFrame.from_dict({'farm' : ['A','B','A','B'],
'fruit':['apple','apple','pear','pear'],
'2014':[10,12,6,8],
'2015':[11,13,7,9]})
Run Code Online (Sandbox Code Playgroud)
即:
2014 2015 farm fruit
0 10 11 A apple
1 12 13 B apple
2 6 7 A pear
3 8 9 B pear
Run Code Online (Sandbox Code Playgroud)
我怎样才能将其转换为:
farm fruit value year
0 A apple 10 2014
1 B apple 12 2014
2 A pear 6 2014
3 B pear 8 2014
4 A apple 11 2015
5 B apple 13 2015
6 A pear 7 2015
7 B pear 9 2015 …Run Code Online (Sandbox Code Playgroud) 在列AI中有不同名称的列表.在B列中,我的值为0或1.
我想得到A列中所有唯一名称的计数,其中B列中有1.
使用下面的数组公式,我可以计算唯一的名称,但不能在B列上应用条件.
=SUM(1/COUNTIF(A:A,A:A))
Run Code Online (Sandbox Code Playgroud) 我有一个希望直截了当的问题,在过去3个小时里给我带来了很多困难.应该很容易.
这是挑战.
我有一个pandas数据帧:
+--------------------------+
| Col 'X' Col 'Y' |
+--------------------------+
| class 1 cat 1 |
| class 2 cat 1 |
| class 3 cat 2 |
| class 2 cat 3 |
+--------------------------+
Run Code Online (Sandbox Code Playgroud)
我想要将数据帧转换为:
+------------------------------------------+
| cat 1 cat 2 cat 3 |
+------------------------------------------+
| class 1 1 0 0 |
| class 2 1 0 1 |
| class 3 0 1 0 |
+------------------------------------------+
Run Code Online (Sandbox Code Playgroud)
其中值是值计数.有人有任何见解吗?谢谢!
我如何'取消'一张桌子?什么是适当的技术术语?
更新:该术语称为融化
我有一个国家的数据框和每年的数据
Country 2001 2002 2003
Nigeria 1 2 3
UK 2 NA 1
Run Code Online (Sandbox Code Playgroud)
我希望有类似的东西
Country Year Value
Nigeria 2001 1
Nigeria 2002 2
Nigeria 2003 3
UK 2001 2
UK 2002 NA
UK 2003 1
Run Code Online (Sandbox Code Playgroud)