我在GitHub上创建了一个组织.我的组织有一些回购.这些repos有API文档,我想gh-pages通过Travis-CI 重新构建和发布到分支.为了让Travis-CI访问我组织的repos,我需要生成一个OAuth令牌,加密它,然后添加然后在.travis.yml文件中包含加密令牌,如下所示......
env:
global:
- secure: "lots-of-seemingly-random-characters"
Run Code Online (Sandbox Code Playgroud)
此SO帖子解释了该过程,并提供了有关如何为用户帐户执行此操作的详细信息.如何为组织帐户生成所需的OAuth令牌?
使用Intellij时,我无法获得scala工作表来查找任何项目类.我已src按照此处的说明将新的scala工作表添加到项目目录中.但是,每当我尝试运行工作表时,我都会收到以下错误
Error:(5, 27) not found: type Order
trait LimitOrder extends Order {
^
Run Code Online (Sandbox Code Playgroud)
该Order性状在包括在一个文件中定义src/main/scala.我甚至尝试将scala工作表放入其中src/main/scala,但仍然无法找到Order特征.
如果出现以下情况,问题似乎就消失了:
sbt-console在项目目录中打开一个外部.打开sbt-console自动编译项目源.然后返回Intellij并重新运行工作表.我的印象是每次重新运行时都会动态编译工作表,因此手动编译它应该是不必要的.这是不正确的?
我是经验丰富的Python/Jupyter用户,但是Windows新手,在下载并安装Anaconda Python 3发行版并启动Jupyter笔记本后,我注意到Jupyter Notebook的内核Python[Root](而不是Python 3基于Unix的系统).
笔记本电脑工作正常,但共享笔记本电脑似乎有问题,因为每当在我的机器上创建的笔记本电脑在非Windows机器上打开时,用户会遇到"无法找到Python[Root]内核"消息并被提示选择Python 3(或Python 2)内核.这很烦人.
我似乎没有选择在笔记本中手动更改内核.也许这是我的Windows机器上如何安装Anaconda(或Jupyter)的问题?
假设我有以下特征来定义一个接口并采用几个类型参数......
trait Foo[A, B] {
// implementation details not important
}
Run Code Online (Sandbox Code Playgroud)
我想使用伴侣对象作为特征的具体实现的工厂.我还想强制用户使用Foo接口而不是子类化所以我隐藏了伴随对象中的具体实现,如下所示:
object Foo {
def apply[A, B](thing: Thing): Foo[A, B] = {
???
}
private case class FooImpl[A1, B1](thing: Thing) extends Foo[A1, B1]
private case class AnotherFooImpl[A2, B1](thing: Thing) extends Foo[A2, B1]
}
Run Code Online (Sandbox Code Playgroud)
我希望能够按如下方式使用工厂:
val foo = Foo[A1, B1](thing) // should be an instance of FooImpl
val anotherFoo = Foo[A2, B1](thing) // should be an instance of AnotherFooImpl
Run Code Online (Sandbox Code Playgroud)
如何实现该apply方法以实现此目的?这个SO帖子似乎接近标志.
我正在将大型 CSV 文件转换为 Parquet 文件以供进一步分析。我将 CSV 数据读入 Pandas 并按dtypes如下方式指定列
_dtype = {"column_1": "float64",
"column_2": "category",
"column_3": "int64",
"column_4": "int64"}
df = pd.read_csv("data.csv", dtype=_dtype)
Run Code Online (Sandbox Code Playgroud)
然后我做一些更多的数据清理并将数据写入 Parquet 以供下游使用。
_parquet_kwargs = {"engine": "pyarrow",
"compression": "snappy",
"index": False}
df.to_parquet("data.parquet", **_parquet_kwargs)
Run Code Online (Sandbox Code Playgroud)
但是当我使用 Pandas 将数据读入进行进一步分析时,from_parquet我似乎无法恢复类别 dtypes。下列
df = pd.read_parquet("data.parquet")
Run Code Online (Sandbox Code Playgroud)
结果DataFrame用objectdtypes 代替了所需的category.
以下似乎按预期工作
import pyarrow.parquet as pq
_table = (pq.ParquetFile("data.parquet")
.read(use_pandas_metadata=True))
df = _table.to_pandas(strings_to_categorical=True)
Run Code Online (Sandbox Code Playgroud)
但是我想知道如何使用pd.read_parquet.
我目前正在使用Python 中的Isolation Forest检测数据集中的异常值,但我没有完全理解 scikit-learn 文档中给出的示例和解释
是否可以使用隔离森林来检测具有 258 行和 10 列的数据集中的异常值?
我需要一个单独的数据集来训练模型吗?如果是,是否有必要让训练数据集没有异常值?
这是我的代码:
rng = np.random.RandomState(42)
X = 0.3*rng.randn(100,2)
X_train = np.r_[X+2,X-2]
clf = IsolationForest(max_samples=100, random_state=rng, contamination='auto'
clf.fit(X_train)
y_pred_train = clf.predict(x_train)
y_pred_test = clf.predict(x_test)
print(len(y_pred_train))
Run Code Online (Sandbox Code Playgroud)
我尝试将我的数据集加载到,X_train但这似乎不起作用。
我正在使用IPython小部件创建一个交互式绘图,帮助学生理解可用的各种ODE求解器的准确性的决定因素scipy.integrate.ode.但是,我似乎找不到关于各种类型的小部件及其关键字args的文档的方式.
from IPython.html.widgets import *
@interact(h=FloatTextWidget(), atol=FloatTextWidget(), rtol=FloatTextWidget(),
k=IndexSliderWidget(), integrator=TextWidget()))
def plot_lotka_volterra_residuals(h=1e-1, atol=1e-3, rtol=1e-3, k=3, integrator='dopri5'):
"""Plots residuals of the Lotka-Volterra system."""
# make a pretty plot!
Run Code Online (Sandbox Code Playgroud)
特别是,我想知道如何为每个小部件设置默认值.
我的github个人网页是davidrpugh.github.io。我在以下位置为我的软件项目设置了一个子davidrpugh.github.io/software页面,并为我的每个软件项目创建了存根子页面。例如davidrpugh.io/software/pypwt。
问题:如何设置项目网页,默认情况下该网页位于davidrpugh.io/pypwt,因此该网页位于davidrpugh.io/software/pypwt?我也希望对项目网页的任何更新也能自动呈现在我的个人网页上。
我猜这是一个已解决的问题,并且我没有使用正确的搜索词集。
我想使用SymPy对包含erf函数的符号表达式进行lambdify.这可以用于标量参数,如下所示:
log_normal = 0.5 + 0.5 * sym.erf((sym.log(x) - mu) / sym.sqrt(2 * sigma**2))
F = sym.lambdify([x, mu, sigma], log_normal)
F(1.0, 0.0, 1.0)
Run Code Online (Sandbox Code Playgroud)
我想对上述内容进行矢量化.通常我会这样做......
log_normal = 0.5 + 0.5 * sym.erf((sym.log(x) - mu) / sym.sqrt(2 * sigma**2))
vector_F = sym.lambdify([x, mu, sigma], log_normal, modules='numpy')
vector_F(1.0, 0.0, 1.0)
Run Code Online (Sandbox Code Playgroud)
然而,上面提出了NameError......
---------------------------------------------------------------------------
NameError Traceback (most recent call last)
<ipython-input-29-14adde48d4a1> in <module>()
----> 1 vector_F(1.0, 0.0, 1.0)
/Users/drpugh/anaconda/lib/python2.7/site-packages/numpy/__init__.pyc in <lambda>(x, mu, sigma)
NameError: global name 'erf' is not defined
Run Code Online (Sandbox Code Playgroud)
这是一个错误,还是我错过了一些微不足道的东西?
我正在使用Scala和Akka启动一个新项目,编写测试时遇到了麻烦。在测试中,我List使用should equal以下命令检查两个对象的相等性:
actualBook should equal (expectedBook)
Run Code Online (Sandbox Code Playgroud)
我的测试套件中的所有内容均可编译并运行,但是测试失败并显示以下消息:
org.scalatest.exceptions.TestFailedException: List(BookRow(A,100.0,10.6)) did not equal List(BookRow(A,100.0,10.6))
Run Code Online (Sandbox Code Playgroud)
显然,测试正在通过(即,两个List对象都包含相同的内容)。不知道这是相关与否,但actualBook与expectedBook具有相同的哈希码(和actualBook(0)和expectedBook(0)也有相同的散列码)。
我想知道问题是否是由于...
BookRow对象的事实。供参考的是我的测试代码:
包lob
import cucumber.api.DataTable
import org.scalatest.Matchers._
import scala.collection.JavaConversions._
import cucumber.api.java.en.{When, Then}
class OrderBookSteps {
val orderTypes = OrderType.all()
val buyBook: OrderBook = new OrderBook(Bid, orderTypes)
val sellBook: OrderBook = new OrderBook(Ask, orderTypes)
@When("""^the following orders are added to the "(.*?)" book:$""")
def ordersAddedToBook(sideString: String, orderTable: DataTable) { …Run Code Online (Sandbox Code Playgroud) python ×3
scala ×3
git ×2
github ×2
github-pages ×2
python-3.x ×2
anaconda ×1
generics ×1
github-api ×1
ipython ×1
numpy ×1
outliers ×1
pandas ×1
parquet ×1
pyarrow ×1
scalatest ×1
scikit-learn ×1
sympy ×1
windows ×1