如何在Java中创建唯一/不同对象(没有重复)的列表?
现在我正在使用HashMap<String, Integer>
这个,因为密钥被覆盖,因此最后我们可以得到HashMap.getKeySet()
哪个是唯一的.但我确信应该有更好的方法来实现这一点,因为这里浪费了价值部分.
如何在值为复制的向量中列出不同的值?我的意思是,类似于以下SQL语句:
SELECT DISTINCT product_code
FROM data
Run Code Online (Sandbox Code Playgroud) 假设我有以下数据框:
> myvec
name order_no
1 Amy 12
2 Jack 14
3 Jack 16
4 Dave 11
5 Amy 12
6 Jack 16
7 Tom 19
8 Larry 22
9 Tom 19
10 Dave 11
11 Jack 17
12 Tom 20
13 Amy 23
14 Jack 16
Run Code Online (Sandbox Code Playgroud)
我想计算order_no
每个值的不同值的数量name
.它应该产生以下结果:
name number_of_distinct_orders
Amy 2
Jack 3
Dave 1
Tom 2
Larry 1
Run Code Online (Sandbox Code Playgroud)
我怎样才能做到这一点?
如果我在PowerShell中发出以下命令,我会收到很多行.
PS C:\Users\benh> get-command
CommandType Name ModuleName Definition
----------- ---- ---------- ----------
Cmdlet Get-Variable Microsoft.PowerShell.Utility Get-Variable...
Cmdlet Get-WebAppDomain WebAdministration Get-WebAppDomain...
Cmdlet Get-WebApplication WebAdministration Get-WebApplication...
Cmdlet Get-WebAppPoolState WebAdministration Get-WebAppPoolState...
...
Cmdlet Get-WinEvent Microsoft.PowerShell.Diagnostics Get-WinEvent...
Cmdlet Get-WmiObject Microsoft.PowerShell.Management Get-WmiObject...
Cmdlet Get-WSManCredSSP Microsoft.WSMan.Management Get-WSManCredSSP...
Cmdlet Get-WSManInstance Microsoft.WSMan.Management Get-WSManInstance...
Cmdlet Group-Object Microsoft.PowerShell.Utility Group-Object...
Cmdlet Import-Alias Microsoft.PowerShell.Utility Import-Alias...
Cmdlet Import-Clixml Microsoft.PowerShell.Utility Import-Clixml...
Cmdlet Import-Counter Microsoft.PowerShell.Diagnostics Import-Counter...
Cmdlet Import-Csv Microsoft.PowerShell.Utility Import-Csv...
Cmdlet Import-LocalizedData Microsoft.PowerShell.Utility Import-LocalizedData...
Cmdlet Import-Module Microsoft.PowerShell.Core ...
Run Code Online (Sandbox Code Playgroud)
我想要做的是获取Get-Command返回的所有不同的ModuleNames.如何使用PowerShell执行此操作?
在伪C#中:
PowerShell.Exec("Get-Command").Select(a=> a.ModuleName).Distinct();
Run Code Online (Sandbox Code Playgroud)
提前致谢!
我有一个mysql表,看起来像这样:
1 value1 value2 3534
2 value1 value1 8456
3 value1 value2 3566
4 value1 value3 7345
5 value2 value3 6734
Run Code Online (Sandbox Code Playgroud)
我需要一个查询来选择具有不同列2和3的所有行,例如,我希望此示例的输出如下所示:
1 value1 value2 3534
2 value1 value1 8456
4 value1 value3 7345
5 value2 value3 6734
Run Code Online (Sandbox Code Playgroud)
我已经找到了一些关于如何做的样本,但它们都在每个列上单独选择不同的.
如果我有:
List<Integer> listInts = { 1, 1, 3, 77, 2, 19, 77, 123, 14, 123... }
Run Code Online (Sandbox Code Playgroud)
在Java中,什么是创建List<Integer> listDistinctInts
仅包含不同值的有效方法listInts
?
我的直接想法是创建一个Set<Integer> setInts
包含所有值listInts
然后调用List<Integer> listDistinctInts = new ArrayList<>(setInts);
但这似乎效率低下 - 使用Java 7是否有更好的解决方案?
我没有使用Java 8,但我相信使用它我可以做这样的事情(?):
List<Integer> listDistinctInts = listInts.stream().distinct().collect(Collectors.toList());
Run Code Online (Sandbox Code Playgroud)
这会比上面的方法更高效和/或在Java 8中有更有效的方法吗?
最后,(我知道,如果我只关心不同元素的数量,那么提出多个问题可能会不受欢迎,但这是直接相关的)是否listInts
有更有效的方法来获得该值(在Java 7和8中) -没有先创建一个列表或所有不同元素的集合?
我最感兴趣的是使用本机Java方法来实现这一点并避免重新发明任何轮子,但如果它们提供更好的清晰度或性能,则会考虑手动代码或库.我已经阅读了这个相关的问题Java - 不同的对象列表,但是它并不完全清楚Java 7和8方法之间的性能差异,或者是否有更好的技术?
问题几乎在标题中:是否有一种有效的方法来计算DataFrame中每列中的不同值?
该描述方法只提供了计数,但不重复计数,我不知道是否有AA的方式来获得所有的重复计数(或选择)列.
我有两个字符串列表.如何获取它们之间的不同值列表或从第一个列表中删除第二个列表元素?
List<string> list1 = { "see","you","live"}
List<string> list2 = { "see"}
Run Code Online (Sandbox Code Playgroud)
结果应该是{"you","live"}
.
我刚尝试在窗口上执行countDistinct并出现此错误:
AnalysisException: u'Distinct window functions are not supported: count(distinct color#1926)
Run Code Online (Sandbox Code Playgroud)
有没有办法在pyspark中对窗口进行明确计数?
这是一些示例代码:
from pyspark.sql.window import Window
from pyspark.sql import functions as F
#function to calculate number of seconds from number of days
days = lambda i: i * 86400
df = spark.createDataFrame([(17, "2017-03-10T15:27:18+00:00", "orange"),
(13, "2017-03-15T12:27:18+00:00", "red"),
(25, "2017-03-18T11:27:18+00:00", "red")],
["dollars", "timestampGMT", "color"])
df = df.withColumn('timestampGMT', df.timestampGMT.cast('timestamp'))
#create window by casting timestamp to long (number of seconds)
w = (Window.orderBy(F.col("timestampGMT").cast('long')).rangeBetween(-days(7), 0))
df = df.withColumn('distinct_color_count_over_the_last_week', F.countDistinct("color").over(w))
df.show()
Run Code Online (Sandbox Code Playgroud)
这是我想看到的输出:
+-------+--------------------+------+---------------------------------------+
|dollars| timestampGMT| …
Run Code Online (Sandbox Code Playgroud) 我需要一个Query来获取不同的密钥,并根据Mongodb 1.6.5中的分数进行排序
我有唱片喜欢
{key ="SAGAR"
score =16
note ="test1"
}
{key ="VARPE"
score =17
note ="test1"
}
{key ="SAGAR"
score =16
note ="test2"
}
{key ="VARPE"
score =17
note ="test2"
}
Run Code Online (Sandbox Code Playgroud)
我需要一个查询,对得分上的所有记录进行排序,并返回给我不同的密钥......