html中dvi和span,R: R News

identical() has a new argument,

ignore.environment, used when comparing functions (with

default FALSE as before).

There is a new option, options(CBoundsCheck=), which

controls how .C() and .Fortran() pass arguments to

compiled code. If true (which can be enabled by setting the

environment variable R_C_BOUNDS_CHECK to yes), raw,

integer, double and complex arguments are always copied, and

checked for writing off either end of the array on return from the

compiled code (when a second copy is made). This also checks

individual elements of character vectors passed to .C().

This is not intended for routine use, but can be very helpful in

finding segfaults in package code.

In layout(), the limits on the grid size have been

raised (again).

New simple provideDimnames() utility function.

Where methods for length() return a double value

which is representable as an integer (as often happens for package

Matrix), this is converted to an integer.

Matrix indexing of dataframes by two-column numeric indices

is now supported for replacement as well as extraction.

setNames() now has a default for its object

argument, useful for a character result.

StructTS() has a revised additive constant in the

loglik component of the result: the previous definition is

returned as the loglik0 component. However, the help page has

always warned of a lack of comparability of log-likelihoods for

non-stationary models. (Suggested by Jouni Helske.)

The logic in aggregate.formula() has been revised.

It is now possible to use a formula stored in a variable;

previously, it had to be given explicitly in the function call.

install.packages() has a new argument quiet to

reduce the amount of output shown.

Setting an element of the graphics argument lwd to a

negative or infinite value is now an error. Lines corresponding

to elements with values NA or NaN are silently

omitted.

Previously the behaviour was device-dependent.

Setting graphical parameters cex, col,

lty, lwd and pch in par() now requires a

length-one argument. Previously some silently took the first

element of a longer vector, but not always when documented to do so.

Sys.which() when used with inputs which would be

unsafe in a shell (e.g. absolute paths containing spaces) now uses

appropriate quoting.

as.tclObj() has been extended to handle raw vectors.

Previously, it only worked in the other direction.

(Contributed by Charlie Friedemann, PR#14939.)

New functions cite() and citeNatbib() have

been added, to allow generation of in-text citations from

"bibentry" objects. A cite() function may be added

to bibstyle() environments.

A sort() method has been added for "bibentry"

objects.

The bibstyle() function now defaults to setting the

default bibliography style. The getBibstyle() function

has been added to report the name of the current default style.

scatter.smooth() now has an argument lpars to

pass arguments to lines().

pairs() has a new log argument, to allow some

or all variables to be plotted on logarithmic scale.

(In part, wish of PR#14919.)

split() gains a sep argument.

termplot() does a better job when given a model with

interactions (and no longer attempts to plot interaction terms).

The parser now incorporates code from Romain Francois'

parser package, to support more detailed computation on

the code, such as syntax highlighting, comment-based

documentation, etc. Functions getParseData() and

getParseText() access the data.

There is a new function rep_len() analogous to

rep.int() for when speed is required (and names are not).

The undocumented use rep(NULL, length.out = n) for

n > 0 (which returns NULL) now gives a warning.

demo() gains an encoding argument for those

packages with non-ASCII demos: it defaults to the package encoding

where there is one.

strwrap() converts inputs with a marked encoding to

the current locale: previously it made some attempt to pass

through as bytes inputs invalid in the current locale.

Specifying both rate and scale to

[dpqr]gamma is a warning (if they are essentially the same

value) or an error.

merge() works in more cases where the data frames

include matrices. (Wish of PR#14974.)

optimize() and uniroot() no longer use a

shared parameter object across calls. (nlm(),

nlminb() and optim() with numerical derivatives

still do, as documented.)

The all.equal() method for date-times is now

documented: times are regarded as equal (by default) if they

differ by up to 1 msec.

duplicated() and unique() gain a nmax

argument which can be used to make them much more efficient when

it is known that there are only a small number of unique entries.

This is done automatically for factors.

Functions rbinom(), rgeom(), rhyper(),

rpois(), rnbinom(), rsignrank() and

rwilcox() now return integer (not double) vectors. This

halves the storage requirements for large simulations.

sort(), sort.int() and sort.list() now

use radix sorting for factors of less than 100,000 levels when

method is not supplied. So does order() if called

with a single factor, unless na.last = NA.

diag() as used to generate a diagonal matrix has been

re-written in C for speed and less memory usage. It now forces

the result to be numeric in the case diag(x) since it is

said to have ‘zero off-diagonal entries’.

backsolve() (and forwardsolve()) are now

internal functions, for speed and support for large matrices.

More matrix algebra functions (e.g. chol() and

solve()) accept logical matrices (and coerce to numeric).

sample.int() has some support for n >= 2^31: see its help for the limitations.

A different algorithm is used for (n, size, replace = FALSE,

prob = NULL) for n > 1e7 and size <= n/2. This

is much faster and uses less memory, but does give different results.

approxfun() and splinefun() now return a

wrapper to an internal function in the stats namespace

rather than a .C() or .Call() call. This is more

likely to work if the function is saved and used in a different

session.

The functions .C(), .Call(),

.External() and .Fortran() now give an error (rather

than a warning) if called with a named first argument.

Sweave() by default now reports the locations in

the source file(s) of each chunk.

clearPushBack() is now a documented interface to a

long-existing internal call.

aspell() gains filters for R code, Debian Control

Format and message catalog files, and support for R level

dictionaries. In addition, package utils now provides

functions aspell_package_R_files() and

aspell_package_C_files() for spell checking R and C level

message strings in packages.

bibentry() gains some support for “incomplete”

entries with a crossref field.

gray() and gray.colors() finally allow

alpha to be specified.

monthplot() gains parameters to control the look of

the reference lines. (Suggestion of Ian McLeod.)

Added support for new %~% relation

(“is distributed as”) in plotmath.

domain = NA is accepted by gettext() and

ngettext(), analogously to stop() etc.

termplot() gains a new argument plot = FALSE

which returns information to allow the plots to be modified for

use as part of other plots, but does not plot them.

(Contributed by Terry Therneau, PR#15076.)

quartz.save(), formerly an undocumented part of

R.app, is now available to copy a device to a

quartz() device. dev.copy2pdf() optionally does

this for PDF output: quartz.save() defaults to PNG.

The default method of pairs() now allows

text.panel = NULL and the use of .panel = NULL

is now documented.

setRefClass() and getRefClass() now return

class generator functions, similar to setClass(), but

still with the reference fields and methods as before

(suggestion of Romain Francois).

New functions bitwNot(), bitwAnd(),

bitwOr() and bitwXor(), using the internal

interfaces previously used for classes "octmode" and

"hexmode".

Also bitwShiftL() and bitwShiftR() for shifting bits

in elements of integer vectors.

New option "deparse.cutoff" to control the deparsing

of language objects such as calls and formulae when printing.

(Suggested by a comment of Sarah Goslee.)

colors() gains an argument distinct.

New demo(colors) and demo(hclColors), with

utility functions.

list.files() (aka dir()) gains a new optional

argument no.. which allows to exclude "." and

".." from listings.

Multiple time series are also of class "matrix";

consequently, head(), e.g., is more useful.

encodeString() preserves UTF-8 marked encodings.

Thus if factor levels are marked as UTF-8 an attempt is made to

print them in UTF-8 in RGui on Windows.

readLines() and scan() (and hence

read.table()) in a UTF-8 locale now discard a UTF-8

byte-order-mark (BOM). Such BOMs are allowed but not recommended

by the Unicode Standard: however Microsoft applications can

produce them and so they are sometimes found on websites.

The encoding name "UTF-8-BOM" for a connection will

ensure that a UTF-8 BOM is discarded.

mapply(FUN, a1, ..) now also works when a1 (or

a further such argument) needs a length() method (which the

documented arguments never do). (Requested by Hervé Pagès; with a

patch.)

.onDetach() is supported as an alternative to

.Last.lib. Unlike .Last.lib, this does not need to

be exported from the package's namespace.

The srcfile argument to parse() may now be a

character string, to be used in error messages.

The format() method for ftable objects gains

a method argument, propagated to write.ftable() and

print(), allowing more compact output, notably for LaTeX

formatting, thanks to Marius Hofert.

The utils::process.events() function has been added

to trigger immediate event handling.

Sys.which() now returns NA (not "") for

NA inputs (related to PR#15147).

The print() method for class "htest" gives

fewer trailing spaces (wish of PR#15124).

Also print output from HoltWinters(), nls() and others.

loadNamespace() allows a version specification to be

given, and this is used to check version specifications given in

the Imports field when a namespace is loaded.

setClass() has a new argument, slots, clearer

and less ambiguous than representation. It is recommended

for future code, but should be back-compatible. At the same time,

the allowed slot specification is slightly more general. See the

documentation for details.

mget() now has a default for envir (the frame

from which it is called), for consistency with get() and

assign().

close() now returns an integer status where available,

invisibly. (Wish of PR#15088.)

The internal method of tar() can now store paths too

long for the ustar format, using the (widely supported) GNU

extension. It can also store long link names, but these are much

less widely supported. There is support for larger files, up to

the ustar limit of 8GB.

Local reference classes have been added to package

methods. These are a technique for avoiding unneeded

copying of large components of objects while retaining standard R

functional behavior. See ?LocalReferenceClasses.

untar() has a new argument restore_times which

if false (not the default) discards the times in the tarball.

This is useful if they are incorrect (some tarballs submitted to

CRAN have times in a local timezone or many years in the

past even though the standard required them to be in UTC).

replayplot() cannot (and will not attempt to) replay

plots recorded under R < 3.0.0. It may crash the R session if

an attempt is made to replay plots created in a different build of

R >= 3.0.0.

Palette changes get recorded on the display list, so

replaying plots (including when resizing screen devices and using

dev.copy()) will work better when the palette is changed

during a plot.

chol(pivot = TRUE) now defaults to LAPACK, not LINPACK.

The parse() function has a new parameter

keep.source, which defaults to options("keep.source").

Profiling via Rprof() now optionally records information

at the statement level, not just the function level.

The Rprof() function now quotes function names in

in its output file on Windows, to be consistent with the quoting

in Unix.

Profiling via Rprof() now optionally records

information about time spent in GC.

The HTML help page for a package now displays non-vignette

documentation files in a more accessible format.

To support options(stringsAsFactors = FALSE),

model.frame(), model.matrix() and

replications() now automatically convert character

vectors to factors without a warning.

The print method for objects of class "table"

now detects tables with 0-extents and prints the results as, e.g.,

< table of extent 0 x 1 x 2 >. (Wish of PR#15198.)

Deparsing involving calls to anonymous functions and has been

made closer to reversible by the addition of extra parentheses.

The function utils::packageName() has been added as

a lightweight version of methods::getPackageName().

find.package(lib.loc = NULL) now treats loaded

namespaces preferentially in the same way as attached packages

have been for a long time.

In Windows, the Change Directory dialog now defaults to

the current working directory, rather than to the last directory

chosen in that dialog.

available.packages() gains a

"license/restricts_use" filter which retains only packages

for which installation can proceed solely based on packages which

are guaranteed not to restrict use.

New check_packages_in_dir() function in package

tools for conveniently checking source packages along with

their reverse dependencies.

R's completion mechanism has been improved to handle help

requests (starting with a question mark). In particular, help

prefixes are now supported, as well as quoted help topics. To

support this, completion inside quotes are now handled by R by

default on all platforms.

The memory manager now allows the strategy used to balance

garbage collection and memory growth to be controlled by setting

the environment variable R_GC_MEM_GROW. See ?Memory

for more details.

(‘For experts only’, as the introductory manual

says.) The use of environment variables R_NSIZE and

R_VSIZE to control the initial (= minimum) garbage

collection trigger for number of cons cels and size of heap has

been restored: they can be overridden by the command-line options

--min-nsize and --min-vsize; see ?Memory.

On Windows, the device name for bitmap devices as reported

by .Device and .Devices no longer includes the file

name. This is for consistency with other platforms and was

requested by the lattice maintainer.

win.metafile() still uses the file name: the exact form is

used by package tkrplot.

set.seed(NULL) re-initializes .Random.seed as

done at the beginning of the session if not already set.

(Suggestion of Bill Dunlap.)

The breaks argument in hist.default() can now be

a function that returns the breakpoints to be used (previously it

could only return the suggested number of breakpoints).

File ‘share/licenses/licenses.db’ has some

clarifications, especially as to which variants of ‘BSD’

and ‘MIT’ is intended and how to apply them to packages.

The problematic licence ‘Artistic-1.0’ has been removed.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
数字乡村和智慧农业的数字化转型是当前农业发展的新趋势,旨在通过应用数字技术,实现农业全流程的再造和全生命周期的管理服务。国政府高度重视这一领域的发展,提出“数字国”和“乡村振兴”战略,以提升国家治理能力,推动城乡融合发展。 数字乡村的建设面临乡村治理、基础设施、产业链条和公共服务等方面的问题,需要分阶段实施《数字乡村发展战略纲要》来解决。农业数字化转型的需求包括满足市民对优质农产品的需求、解决产销对接问题、形成优质优价机制、提高农业劳动力素质、打破信息孤岛、提高农业政策服务的精准度和有效性,以及解决农业融资难的问题。 数字乡村建设的关键在于构建“1+3+4+1”工程,即以新技术、新要素、新商业、新农民、新文化、新农村为核心,推进数据融合,强化农业大数据的汇集功能。数字农业大数据解决方案以农业数字底图和数据资源为基础,通过可视化监管,实现区域农业的全面数字化管理。 数字农业大数据架构基于大数据、区块链、GIS和物联网技术,构建农业大数据心、农业物联网平台和农村综合服务指挥决策平台三大基础平台。农业大数据心汇聚各类涉农信息资源和业务数据,支持大数据应用。信息采集系统覆盖市、县、乡、村多级,形成高效的农业大数据信息采集体系。 农业物联网平台包括环境监测系统、视频监控系统、预警预报系统和智能控制系统,通过收集和监测数据,实现对农业环境和生产过程的智能化管理。综合服务指挥决策平台利用数据分析和GIS技术,为农业决策提供支持。 数字乡村建设包括三大服务平台:治理服务平台、民生服务平台和产业服务平台。治理服务平台通过大数据和AI技术,实现乡村治理的数字化;民生服务平台利用互联网技术,提供各类民生服务;产业服务平台融合政企关系,支持农业产业发展。 数字乡村的应用场景广泛,包括农业生产过程、农产品流通、农业管理和农村社会服务。农业生产管理系统利用AIoT技术,实现农业生产的标准化和智能化。农产品智慧流通管理系统和溯源管理系统提高流通效率和产品追溯能力。智慧农业管理通过互联网+农业,提升农业管理的科学性和效率。农村社会服务则通过数字化手段,提高农村地区的公共服务水平。 总体而言,数字乡村和智慧农业的建设,不仅能够提升农业生产效率和管理水平,还能够促进农村地区的社会经济发展,实现城乡融合发展,是推动国农业现代化的重要途径。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值