小编Dro*_*ror的帖子

Mathematica输出中"tmp $ xxxx"的含义

由于谷歌字符串包含$(美元符号)是有问题的,我无法找到以下输出的任何解释:

{Cos[tmp$132923 + \[Phi]], 
 Sin[tmp$132926 + \[Phi]], 
\[Phi]
}
Run Code Online (Sandbox Code Playgroud)

问题:

什么tmp$xxxx意思?

一些背景

在`book2.nb'中我定义了以下函数:

g[i_, j_] := {
  f1[i, t, f2[b, j], p][[1]],
  f1[i, t, f2[b, j], p][[2]],
  f3[i, t, p]
  }
Run Code Online (Sandbox Code Playgroud)

f1,f2,f3在另一个笔记本电脑都被定义book1.nb,这是初始化和工作的罚款.此外,f1返回一个列表,并且b是一个定义并激活的列表.

现在,当我调用时,g[1,1]我得到一个类似于上面引用的输出 - 用这个tmp$.然而,如果我试图绘制g它完美的工作(使用ParametricPlot3D[g[1, 1], {t, 0, 1}, {p, 0, 2 Pi}]).但是,如果我尝试定义变量

V= {
      f1[1, t, f2[b, 1], p][[1]],
      f1[1, t, f2[b, 1], p][[2]],
      f3[1, t, p]
      }
Run Code Online (Sandbox Code Playgroud)

我 …

wolfram-mathematica

7
推荐指数
2
解决办法
1015
查看次数

在Mathematica中标注多边形的顶点

给定平面中的一组点,T={a1,a2,...,an}然后Graphics[Polygon[T]]将绘制由点生成的多边形.如何在多边形的顶点添加标签?只有索引作为标签会比没有更好.有任何想法吗?

plot wolfram-mathematica

6
推荐指数
2
解决办法
1703
查看次数

格式化elasticsearch-py的输出

我正在尝试使用python客户端elasticsearch.这是一个最小的例子:

import logging
logging.basicConfig()

from elasticsearch import Elasticsearch as ES

print "Setup connection..."
es=ES(['localhost:8080'])
print "Done!"

print "Count number of users..."
print es.count(index='users')
Run Code Online (Sandbox Code Playgroud)

输出是:

{u'count': 836780, u'_shards': {u'successful': 5, u'failed': 0, u'total': 5}}
Run Code Online (Sandbox Code Playgroud)

我有两个问题:

  1. 我如何摆脱u'(u后面是单引号)?
  2. 如何提取计数值?我想我可以做字符串操作,但这听起来像是错误的方式.... 答案:如果输出保存到res,那么res['count'] returns the number836780`.

python elasticsearch pyelasticsearch

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

pandas DataFrame的本质

作为我对列中混合类型的问题的后续跟进:

我可以将a DataFrame视为列列表还是行列表?

在前一种情况下,这意味着(最佳地)每列必须是同质的(类型),并且不同的列可以是不同类型的.后一种情况表明,每一行都是类型均匀的.

对于文档:

DataFrame是一个二维标记数据结构,具有可能不同类型的列.

这意味着DataFrame是列的列表.

是否意味着向a追加一行DataFrame比追加一列更昂贵?

python pandas

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

DataFrame 列名称内的换行符

我的理解是,将换行符\n作为代表 a 列的字符串的一部分pandas.DataFrame可以被认为是不好的做法。例如:

pandas.DataFrame([[1,2],[3,4]], columns=['First\ncolumn', 'Second\ncolumn'])
Run Code Online (Sandbox Code Playgroud)

主要原因是,这将列名隐藏在繁琐的名称后面,因此容易出错。然而,优点之一是,DataFrame例如,在将 , 导出到 Excel 时,这在格式化列名称方面非常方便。

在这种情况下,什么被认为是最佳实践?有没有办法只为导出设置列格式?我找不到一个。

python export pandas

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

将数据从txt导入Mathematica

请考虑mathematica中的以下列表:

a = {
   {
    {0, 0, 0}, {1, 0, 0}, {1, 1, 0}
    },
   {
    {0, 0, 1}, {1, 0, 1}, {1, 1, 1}
    }
   };
Run Code Online (Sandbox Code Playgroud)

现在,调用:

Export["test.dat", a]
Run Code Online (Sandbox Code Playgroud)

然后

b = Import["test.dat"]
Run Code Online (Sandbox Code Playgroud)

你会看到最后a不等于b.我应该将此视为功能还是错误?

此外,我想导入一个具有以下格式的列表:{P1,P2,P3...,Pn}where Pi={v1,v2,v3,...,vm}和each vi={x,y,z}where x,y,z是表示顶点坐标的数字vi.这应该是多边形列表.

我应该如何设置我的.dat文件以便我可以使用Mathematica阅读它,我应该如何阅读它?我试图模仿Export["test.dat",a]上面的输出,但后来我发现了另一个问题.我发现了这个问题,但无法让答案对我有用......

有任何想法吗?提前致谢!

import wolfram-mathematica data-import

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

将时区分配给Python日期时间

假设我有一个无时区的datetime对象:

import datetime
import pytz
fmt = "%Y-%m-%d %H:%M:%S %Z%z"
dtUnaware = datetime.datetime(1979,2,20,6)
print(dtUnaware.strftime(fmt))
Run Code Online (Sandbox Code Playgroud)

这会产生:

1979-02-20 06:00:00 
Run Code Online (Sandbox Code Playgroud)

到现在为止还挺好.现在,我想为此对象分配一个时区.好像我可以使用datetime.replace或者pytz.localize.

第一:

dtAware1 = dtUnaware.replace(tzinfo=pytz.timezone('Asia/Jerusalem'))
print(dtAware1.strftime(fmt))
Run Code Online (Sandbox Code Playgroud)

回报:1979-02-20 06:00:00 LMT+0221.其次:

dtAware2 = pytz.timezone('Asia/Jerusalem').localize(dtUnaware, is_dst=None)
print(dtAware2.strftime(fmt))
Run Code Online (Sandbox Code Playgroud)

回报1979-02-20 06:00:00 IST+0200.

第一种方法有什么问题?它似乎分配了一个错误的时区.难道我做错了什么?

python datetime pytz

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

按提交 ID 过滤 mlflow 运行

使用 MlFlow 的 UI 时,是否可以使用 (git) 提交 ID 过滤/搜索运行?我设法按参数搜索,但似乎没有办法按提交 ID 进行过滤。

在此输入图像描述

version-control machine-learning mlflow

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

Spark pandas_udf 并不更快

我面临着繁重的数据转换。简而言之,我有数据列,每个数据列都包含与一些序数相对应的字符串。例如,HIGHMIDLOW。我的目标是将这些字符串映射到整数以保留顺序。在这种情况下,LOW -> 0MID -> 1HIGH -> 2

这是一个生成此类数据的简单函数:

def fresh_df(N=100000, seed=None):
    np.random.seed(seed)
    feat1 = np.random.choice(["HI", "LO", "MID"], size=N)
    feat2 = np.random.choice(["SMALL", "MEDIUM", "LARGE"], size=N)

    pdf = pd.DataFrame({
        "feat1": feat1,
        "feat2": feat2
    })
    return spark.createDataFrame(pdf)
Run Code Online (Sandbox Code Playgroud)

我的第一个方法是:

feat1_dict = {"HI": 1, "MID": 2, "LO": 3}
feat2_dict = {"SMALL": 0, "MEDIUM": 1, "LARGE": 2}

mappings = {
    "feat1": F.create_map([F.lit(x) for x in chain(*feat1_dict.items())]),
    "feat2": F.create_map([F.lit(x) for x in chain(*feat2_dict.items())])
}

for …
Run Code Online (Sandbox Code Playgroud)

python optimization pandas apache-spark pyspark

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

在多索引列上执行聚合

我从这个数据框开始:

df = pd.DataFrame(
    [
        ["a", "aa", "2020-12-20", 10],
        ["a", "ab", "2020-12-26", 11],
        ["a", "aa", "2020-12-22", 10],
        ["b", "bb", "2020-12-25", 111],
        ["c", "bb", "2020-12-20", 20],
        ["d", "dd", "2020-12-05", 1111]
    ],
    columns=["cat", "user", "date", "value"]
)
df["date"] = pd.to_datetime(df.date)
Run Code Online (Sandbox Code Playgroud)
用户 日期 价值
0 一种 aa 2020-12-20 00:00:00 10
1 一种 AB 2020-12-26 00:00:00 11
2 一种 aa 2020-12-22 00:00:00 10
3 bb 2020-12-25 00:00:00 111
4 C bb 2020-12-20 00:00:00 20
5 d 2020-12-05 00:00:00 1111

接下来,我正在运行以下聚合:

gb …
Run Code Online (Sandbox Code Playgroud)

python dataframe pandas

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