小编Adr*_*ian的帖子

创建自定义Applicative Functor以与scalaz | @ |一起使用需要哪些方法

我希望能够使用scalaz的| @ | 在我自己的applicative functor上.

例:
val spread: Source[Yield] = (y2 |@| y1)(_ - _)

这是我的班级

sealed abstract class Source[+A] {
  def map[B](f: A => B): Source[B] 
  def unit[A](a: A): Source[A]
  def pureList[A](la: List[A]): Source[A]
  def zero[A]: Source[A]
  def map2[A, B, C](as: Source[A], bs: Source[B], f: (A, B) => C): Source[C]
}
Run Code Online (Sandbox Code Playgroud)

我确定我必须实施,map因为它是一个仿函数.
一个适用可以通过多种方式来实现:例如使用apply()unit()map2()unit().

我需要appure呢?

如你所见,我不确定需要什么.

functional-programming scala scalaz applicative

4
推荐指数
1
解决办法
85
查看次数

LocalDate.now()。plusMonths(m)的隐式数值加宽

我在这样的隐式类中有以下代码:

object TenorOperations {
  implicit class TenorOperations(thiss: Tenor) {

    def toDate: LocalDate = thiss match {
      case Day(d) => LocalDate.now().plusDays(d)
      case Month(m) => LocalDate.now().plusMonths(m)
      case Year(y) => LocalDate.now().plusYears(y)
      case errorDate => throw new Exception("Unexpected date: "+errorDate)
    }

  }
}
Run Code Online (Sandbox Code Playgroud)

它只是不会在IDEA中编译。

Error:(14, 47) implicit numeric widening
      case Day(d) => LocalDate.now().plusDays(d)
                                              ^
Error:(15, 51) implicit numeric widening
      case Month(m) => LocalDate.now().plusMonths(m)
                                                  ^
Error:(16, 49) implicit numeric widening
      case Year(y) => LocalDate.now().plusYears(y)
                                                ^
Run Code Online (Sandbox Code Playgroud)

这曾经工作。我该如何解决?

scala date intellij-idea

3
推荐指数
1
解决办法
1912
查看次数

3
推荐指数
1
解决办法
596
查看次数

如何使用 sklearn.datasets.load_files 加载数据百分比

我有 8000 张图像,我正在加载sklearn.datasets.load_files并从keras通过 resnet获取瓶颈功能。然而,这项任务在 GPU 上需要花费数小时,所以我想知道是否有办法告诉load_files加载 20% 之类的数据百分比。

我这样做是为了训练我自己的顶层(最后一个密集层)并将其附加到 resnet。

def load_dataset(path):
    data = load_files(path)
    files = np.array(data['filenames'])
    targets = np_utils.to_categorical(np.array(data['target']), 100)
    return files, targets

train_files, train_targets = load_dataset('images/train')
Run Code Online (Sandbox Code Playgroud)

numpy python-3.x scikit-learn deep-learning keras

3
推荐指数
1
解决办法
2416
查看次数

我在向Java日历对象添加14天时遇到问题,一直给我2012年2月31日

任何人都可以告诉我以下代码有什么问题吗?它增加了14天到对象就好了但是当它增加14天到2月17日它应该出现在今年的2012年3月2日,但我得到的是2012年2月31日.我试过添加2周,单日在一个for循环中,一切都会回到同一个日期.我花了两天时间搜索谷歌并尽可能多地阅读,但没有运气.希望有人在这里可以看到我失踪的东西.

while(calNextPaymentDate.before(calEnd))
{
   Dates.add(date);
   calNextPaymentDate.add(Calendar.DAY_OF_MONTH, 14);
   date = (GregorianCalendar) calNextPaymentDate.clone();
}
Run Code Online (Sandbox Code Playgroud)

calNextPaymentDatecalEndGregorianCalendar对象,我已经做了的痕迹,以确保日期将被填充的罚款.它正确地添加了14天的日期,但正如我所说,我不应该得到2012年2月31日的数据.

java android

1
推荐指数
1
解决办法
178
查看次数

由于{in pattern:java.util.regex.PatternSyntaxException,String.split(pattern)抛出异常

我在Java中有一个String.以下是我关注的部分内容{3: {108:TR2011052300088}}

后来我分手了{3: {108:.出于某种原因(我一直在google搜索){,并}是一个特殊字符,因此必须进行转义\}\{(显然这不起作用- >编译时错误).

其他人提到这是Java正则表达式中的一些错误.我不确定.我得到的例外是:

Exception in thread "main" java.util.regex.PatternSyntaxException: Unclosed counted closure near index 2 {3:{108: at java.util.regex.Pattern.error(Unknown Source)

简而言之,我的代码将字符串拆分{3: {108:为分隔符并在其上崩溃:

String query="{3: {108:";
String [] messageParts = message.split(query);
Run Code Online (Sandbox Code Playgroud)

我知道其他方法,虽然更复杂,比如编写我自己的解析器等.

如何进行字符串拆分而不是崩溃?

编辑: 回答一些评论:
- 双斜线没有帮助:\\{\{3:\{108:MAMABEARid123}}2斜杠变为1
- 逃避1斜杠将无法编译:无效的转义序列

java string split

1
推荐指数
1
解决办法
4369
查看次数

Oracle - 选择*其中列> 5

我正在尝试根据列进行比较.比方说,如果列> 5.

select * where column>5
Run Code Online (Sandbox Code Playgroud)

该列包含非数字.我认为Oracle允许比较字符串(如Java).

显然这是不允许的.

ORA-01722: invalid number
01722. 00000 -  "invalid number"
Run Code Online (Sandbox Code Playgroud)

有没有办法与非数字字段进行比较?
谢谢

sql oracle ora-01722

1
推荐指数
1
解决办法
336
查看次数

Kafka-Connect-Hdfs - 无法启动 HdfsSinkConnector

我已经从http://docs.confluent.io/2.0.0/quickstart.html#quickstart下载了 kafka 连接

我正在尝试运行 hdfs 连接器。以下是设置:

连接standalone.properties:

bootstrap.servers=lvpi00658.s:9092,lvpi00659.s:9092,lvpi00660.s:9092

key.converter=org.apache.kafka.connect.storage.StringConverter
value.converter=org.apache.kafka.connect.storage.StringConverter

internal.key.converter=org.apache.kafka.connect.storage.StringConverter
internal.value.converter=org.apache.kafka.connect.storage.StringConverter

offset.storage.file.filename=/tmp/connect.offsets
# Flush much faster than normal, which is useful for testing/debugging
offset.flush.interval.ms=10000

key.deserializer=org.apache.kafka.common.serialization.StringDeserializer
 value.deserializer=org.apache.kafka.common.serialization.StringDeserializer
Run Code Online (Sandbox Code Playgroud)

快速入门-hdfs.properties:

name=hdfs-sink
connector.class=io.confluent.connect.hdfs.HdfsSinkConnector
tasks.max=1
topics=eightball-stuff11
hdfs.url=hdfs://localhost:9000
flush.size=3
Run Code Online (Sandbox Code Playgroud)

我像这样运行 hdfs 连接器:
cd /home/fclvappi005561/confluent-3.0.0/bin
./connect-standalone ../etc/kafka-connect-hdfs/connect-standalone.properties ../etc/kafka-connect-hdfs/quickstart-hdfs.properties

但我收到一个错误:

[2016-09-12 17:19:28,039] 信息无法启动 HdfsSinkConnector: (io.confluent.connect.hdfs.HdfsSinkTask:72) org.apache.kafka.connect.errors.ConnectException: org.apache.hadoop。 security.AccessControlException: 权限被拒绝: user=lvpi005561, access=WRITE, inode="/topics":root:supergroup:drwxr-xr-x at org.apache.hadoop.hdfs.server.namenode.FSPermissionChecker.check(FSPermissionChecker. java:319) 在 org.apache.hadoop.hdfs.server.namenode.FSPermissionChecker.check(FSPermissionChecker.java:292) 在 org.apache.hadoop.hdfs.server.namenode.FSPermissionChecker.checkPermission(FSPermissionChecker.java:213)在 org.apache.hadoop.hdfs.server.namenode.FSPermissionChecker.checkPermission(FSPermissionChecker.java:190) 在 org.apache.hadoop.hdfs.server.namenode.FSDirectory。checkPermission(FSDirectory.java:1698) at org.apache.hadoop.hdfs.server.namenode.FSDirectory.checkPermission(FSDirectory.java:1682) at org.apache.hadoop.hdfs.server.namenode.FSDirectory.checkAncestorAccess(FSDirectory. java:1665) 在 org.apache.hadoop.hdfs.server.namenode.FSDirMkdirOp.mkdirs(FSDirMkdirOp.java:71) 在 org.apache.hadoop.hdfs.server.namenode.FSNamesystem.mkdirs(FSNamesystem.java:3900)在 org.apache.hadoop.hdfs.server.namenode.NameNodeRpcServer.mkdirs(NameNodeRpcServer.java:978) 在 org.apache.hadoop.hdfs.protocolPB.ClientNamenodeProtocolServerSideTranslatorPB.mkdirs(ClientNamenodeProtocolServerSideTranslatorPB.javaorg.apache.hadoop) …

hdfs apache-kafka apache-kafka-connect

1
推荐指数
1
解决办法
1752
查看次数

添加数组时重复错误消息

自从十月的第一周以来我一直在研究java,我似乎无法继续这个问题.我解决了一个问题而另一个问题不断出现.我正在使用Blue J,我正在尝试向响应数组添加一个数组.这是代码:

public class eDiary{
    public static void main (String args[]){
        int [] days = {1,2,3,4,5,6,7};
        String [] responses;
        int i = 0;

        for(i=0; i<7; i++){
            String response = Console.readString("What is your major event for day " + days[i]);
            responses[responses.length] = responses;

        }
    }


}
Run Code Online (Sandbox Code Playgroud)

我试图让用户输入当天的重大事件.每个事件都应该将自己添加到响应数组中,因为它对应于days数组(响应1对应于第1天)我没有完成代码,但这是第一部分.该错误一直提到"respond [responses.length] =响应中不兼容的类型;我如何处理这个问题.可能会有更多的错误,因为BlueJ似乎一次只显示一个错误.

java arrays string

0
推荐指数
1
解决办法
137
查看次数

如何使用flatMap将集合拆分为元素

我有这种类型的输入:
List( (key1, List(1,2,3)), (key2, List(4,5)) )
我想以下列方式重新映射它:
List( (key1, 1), (key1, 2), (key1, 3), (key2, 4), (key2, 5) )

我无法弄清楚如何将列表拆分为元素并仍保留密钥.

scala scala-collections

0
推荐指数
1
解决办法
662
查看次数