我有一个庞大的Excel 2003电子表格,我正在努力.有很多非常大的公式,有很多细胞参考.这是一个简单的例子.
='Sheet'!AC69+'Sheet'!AC52+'Sheet'!AC53)*$D$3+'Sheet'!AC49
Run Code Online (Sandbox Code Playgroud)
他们中的大多数都比这更复杂,但这可以很好地了解我正在使用的内容.这些细胞参考中很少是绝对的($ s).我希望能够将这些单元格复制到不同的位置,而不会更改单元格引用.我知道我可以简单地使用f4来使引用绝对,但是有很多数据我可能需要稍后使用Fill.有没有办法暂时禁用复制粘贴/填充更改单元格引用而不使引用绝对?
编辑:我刚刚发现你可以通过将单元格内容复制为文本而不是公式来对VBA执行此操作.我不想这样做,因为我想一次复制整行/列.我缺少一个简单的解决方案吗?
这是一个我一直绞尽脑汁的问题.假设我有一个表,其中包含一系列时间戳和一个部件号作为主键.该表存储增量更改,这意味着对于每个时间戳,如果字段更改,则记录该更改.如果该字段未更改,则对于新时间戳,它为NULL.这是基本的想法.
part | timestamp | x-pos | y-pos | status
------+-----------+-------+-------+--------
a5 | 151 | 5 | 15 | g
a5 | 153 | NULL | 17 | NULL
Run Code Online (Sandbox Code Playgroud)
(part, timestamp)是主键.NULL第二条记录中的s表示自第一条记录以来未改变的值.
我希望能够做的是为部件分组的每个字段选择最新值.例如,给定上述条目,对于a5部分,结果将为153,5,17,g.
截至目前,我已将此黑客一起查询.
((SELECT x-pos FROM part_changes WHERE x-pos IS NOT NULL
ORDER BY timestamp DESC
LIMIT 1)
UNION
(SELECT y-pos FROM part_changesWHERE y-pos IS NOT NULL
ORDER BY timestamp DESC
LIMIT 1)
UNION
(SELECT status FROM part_changes WHERE status IS NOT NULL
ORDER BY timestamp DESC …Run Code Online (Sandbox Code Playgroud) 我有一个大的Shiny应用程序,它有许多提示,然后根据这些输入生成表格和绘图.我不使用rmarkdown或knitr或任何东西来格式化输出.我只使用标准的Shiny元素(sidebarPanel,mainPanel等).对于图和表,我使用标准的反应式renderPlot和renderTable对象.我正在寻找一种简单的方法来获得一个名为"导出为PDF"的按钮,该按钮将页面上的元素导出为PDF文档.
我已经研究过使用knitr和rmarkdown生成一个带有一些花哨格式的文档(参见这里和这里的例子).问题是我似乎需要在一个downloadHandler对象中的Rmd文件或server.R中重新生成表和图,我想避免这种情况.
有没有办法更容易地将页面输出为pdf.更具体地说,有没有办法直接引用Rmd文件中的输出表和图(即输出$对象),这样就不需要生成两次图和表.
编辑:这是一些简化的代码.注意getDataset()是一个响应函数,它根据输入查询数据库.我的目标是简单地添加一个"导出"按钮,用于导出已生成的图和表.(另外作为旁注,有什么方法可以获得在所有被动元素之间共享的被动数据集?即不需要在每个对象中都有ds < - getDataset()?)
服务器
output$hist <- renderPlot({
ds <- getDataset()
# do data transformations
ggplot(ds, aes(val)) +
geom_histogram(binwidth = binSize, aes(fill = ..count..)) +
labs(title = "val dist", x = "val", y = "Count") +
scale_fill_gradient("Count", low = "green", high = "red", guide = FALSE) +
scale_x_continuous(limits = c(min(ds$val), quantile(ds$val, 0.99))) +
geom_hline(yintercept=maxY, linetype=3)
})
output$time <- renderPlot({
ds <- getDataset()
# do data transformations
ggplot(ds, aes(as.POSIXlt(unixTime, origin="1970-01-01", tz="UTC"), val), colour = …Run Code Online (Sandbox Code Playgroud) 从各种 来源获取想法,并结合我自己的想法,我试图创建一个动画地图,根据我的数据中的某些值显示国家的阴影.
基本过程是这样的:
这很好用.问题是它非常慢.我有可能超过100k的时间间隔(超过几个指标)我想要制作动画,并且我得到每帧的平均时间为15秒,并且当帧数越多时,它就越糟糕.按照这个速度,我的计算机上的cpu和内存可能需要数周才能生成单个动画.
我知道matplotlib的速度并不快(例如:1和2)但是我读到了人们以5 + fps的速度生成动画并且想知道我做错了什么的故事.
我做过的一些优化:
也许一个不太详细的shapefile会加快形状的着色,但正如我之前所说,每帧只有3s的改进.
这是代码(减去几个可识别的功能)
import pandas as pd
import numpy as np
import matplotlib as mpl
import matplotlib.pyplot as plt
import matplotlib.animation as animation
import time
from math import pi
from sqlalchemy import create_engine
from mpl_toolkits.basemap import Basemap
from matplotlib.patches import Polygon
from matplotlib.collections import PatchCollection
from geonamescache import GeonamesCache
from datetime import datetime
def get_dataset(avg_interval, …Run Code Online (Sandbox Code Playgroud) 我正在研究虹膜识别算法,该算法将这些类型的图像处理成用于识别和认证目的的唯一代码.
在过滤,智能阈值处理,然后在图像中找到边缘之后,下一步显然是将圆圈与瞳孔和虹膜拟合.我环顾四周使用的技术是圆形霍夫变换.这是我实现的代码.对于神秘的变量名称感到抱歉.
print "Populating Accumulator..."
# Loop over image rows
for x in range(w):
# Loop over image columns
for y in range(h):
# Only process black pixels
if inp[x,y] == 0:
# px,py = 0 means pupil, otherwise pupil center
if px == 0:
ra = r_min
rb = r_max
else:
rr = sqrt((px-x)*(px-x)+(py-y)*(py-y))
ra = int(rr-3)
rb = int(rr+3)
# a is the width of the image, b is the height
for _a in range(a):
for …Run Code Online (Sandbox Code Playgroud) 这个可能比我做的简单得多.我必须查询具有这样的基本布局的表
(productNumber varchar, firstYearAvailable int, lastYearAvailable int, ...)
Run Code Online (Sandbox Code Playgroud)
例如
(12345, 2004, 2006, ...),
(22293b, 2009, 2011, ...),
(a7564n, 2007, 2010, ...),
etc.
Run Code Online (Sandbox Code Playgroud)
通过一系列复杂的连接,在与其他表一起的函数中查询此表.截至目前,查询是这样的
SELECT field1, field2, productNumber, firstYearAvailable, lastYearAvailable, ...
FROM ...
JOIN ...
WHERE ...
etc.
Run Code Online (Sandbox Code Playgroud)
不是每个产品(第一年 - 去年)返回年份范围,而是为每个产品返回每年的条目(firstYear,firstYear + 1,...,lastYear)会更有用.例如,假设产品编号是12345,该产品的范围是2004-2006,那么查询应该返回该产品和那两列.
(12345,2004),
(12345,2005),
(12345,2006)
Run Code Online (Sandbox Code Playgroud)
还有一个细节使得此查询特别困难,查询搜索多个部件号,并且每个部件号可能具有不同的年份范围.
有没有人有关于如何解决这个问题的任何提示?我愚弄了循环和连接,并通过条件动态生成SQL语句,但这些都没有效果.
希望我提供了足够的信息,但如果我没有,请问.
谢谢
postgresql ×2
algorithm ×1
animation ×1
cell ×1
choropleth ×1
copy-paste ×1
database ×1
date ×1
excel ×1
knitr ×1
matplotlib ×1
null ×1
python ×1
r ×1
r-markdown ×1
range ×1
reference ×1
select ×1
shiny ×1
sql ×1