我正在尝试将varchar(20)字段转换为numeric(10,2),为此我正在使用以下脚本:
SELECT CAST(CASE Age WHEN 'NULL' THEN 0 ELSE Age END AS numeric(10,2)) AS Age
FROM AgeTable
Run Code Online (Sandbox Code Playgroud)
但我收到此错误:
将 varchar 值“71.8”转换为数据类型 int 时转换失败。
我有一个数据框,其中包含已读入 R 的日期时间列。时间值显示为数字时间,如下面的数据示例所示。我想将这些转换为 datetime POSIXct 或 POSIXlt 格式,以便可以查看日期和时间。
tdat <- c(974424L, 974430L, 974436L, 974442L, 974448L, 974454L, 974460L, 974466L, 974472L,
974478L, 974484L, 974490L, 974496L, 974502L, 974508L, 974514L, 974520L, 974526L,
974532L,974538L)
Run Code Online (Sandbox Code Playgroud)
974424应该等于00:00:00 01/03/2011,但不知道数值的原始时间(即下面使用的 1970-01-01 不起作用)。我曾尝试使用如下命令来实现这一点,并花了一些时间尝试开始as.POXISct工作,但我还没有找到解决方案(即我要么以 POSIXct 的 NA 对象结束,要么以模糊的日期时间值结束) .
尝试将数字时间转换为日期时间:
datetime <- as.POSIXct(strptime(time, format = "%d/%m/%Y %H:%M:%S"))
datetime <- as.POSIXct(as.numeric(time), origin='1970-01-01')
Run Code Online (Sandbox Code Playgroud)
我确信这是一件简单的事情。任何帮助将不胜感激。谢谢!
我在用 Data <- read.table("file", head=TRUE, sep=";")读取我的文件。
在head我的文件看起来是这样的:
Date Time Global_active_power Global_reactive_power Voltage Global_intensity
66637 2007-02-01 00:00:00 0.326 0.128 243.150 1.400
66638 2007-02-01 00:01:00 0.326 0.130 243.320 1.400
66639 2007-02-01 00:02:00 0.324 0.132 243.510 1.400
66640 2007-02-01 00:03:00 0.324 0.134 243.900 1.400
66641 2007-02-01 00:04:00 0.322 0.130 243.160 1.400
66642 2007-02-01 00:05:00 0.320 0.126 242.290 1.400
Sub_metering_1 Sub_metering_2 Sub_metering_3
66637 0.000 0.000 0
66638 0.000 0.000 0
66639 0.000 0.000 0
66640 0.000 0.000 0
66641 0.000 0.000 …Run Code Online (Sandbox Code Playgroud) 这可能很幼稚,但我想知道有什么方法可以找到具有偶数条目和奇数条目的行。我有这种格式的数据
"41,43,45,49,35,39,47,37"
"12,14,18,16,20,24,22,10"
"1,2,3,4,5,6"
"1,7,521,65,32"
Run Code Online (Sandbox Code Playgroud)
我曾尝试将这些值与 Id 列分开,然后使用 Even 和 Odd 函数读取它们,但这太花时间了。是否有查询或函数通过我可以找出哪些行是偶数、奇数序列和任意行?
提前致谢。
例如,我想将数字转换167009345.8为167009345.8.
我用过很多方法,但都有问题。
例如,
x <- "167009345.8"
class(x) <- "numeric"`
Run Code Online (Sandbox Code Playgroud)
输出是167009346.
但我想要十进制数167009345.8。
我也用过as.numeric,但也有同样的问题。
请你帮助我好吗?
在网上找到了这个脚本。它的工作原理是我下载它的基本原因。但我想知道一些事情:
代码:
c:
cd\
@Echo ------------------------------------------------------
@Echo ------------------------------------------------------
@For /F "tokens=*" %%a IN ('"hostname"') do @Set summaryouthost=%%a
@Echo Integrity Check on: %summaryouthost%
@For /F "tokens=*" %%a IN ('"chdir"') do @Set summaryoutchdir=%%a
@Echo Integrity Check For the path: %summaryoutchdir%
@Echo ------------------------------------------------------
@For /F "tokens=*" %%a IN ('"date /T"') do @Set summaryoutsdate=%%a
@Echo Start Date: %summaryoutsdate%
@For /F "tokens=*" %%a IN ('"time /T"') do @Set summaryoutstime=%%a
@Echo Start time: %summaryoutstime%
@Echo ------------------------------------------------------
@For /F …Run Code Online (Sandbox Code Playgroud) 我正在尝试将字符列从数据框转换为数字。然而,我得到的结果是四舍五入的值。
无论我通过研究SO上相同性质的其他问题所做的尝试,都对我不起作用。我已经检查了我尝试转换的列向量的类,它是一个字符,而不是一个因子。
这是我的代码片段:
some_data <- read.csv("file.csv", nrows = 100, colClasses = c("factor", "factor", "character", "character"))
y <- Vectorize(function(x) gsub("[^\\.\\d]", "", x, perl = TRUE))
some_data$colC <- y(data1$colC)
data1$colD <- y(data1$colCD)
data1$colC <- as.numeric(data1$colC)
data1$colD <- as.numeric(data1$colD)
Run Code Online (Sandbox Code Playgroud)
编辑:
> dput(head(data1))
structure(list(colA = structure(c(2L, 2L, 5L, 6L, 5L, 6L), .Label = c("(Other)",
"Direct", "Display", "Email", "Organic Search", "Paid Search",
"Referral", "Social Network"), class = "factor"), colB = structure(c(1L,
2L, 2L, 2L, 1L, 1L), .Label = c("No", "Yes"), class = "factor"),
colC = …Run Code Online (Sandbox Code Playgroud) When I order my database SQLITE by Classement I have this :
Classement | Nom
1 | clem
10 | caro
11 | flo
12 | raph
2 | prisc
3 | karim
4 | prout
Run Code Online (Sandbox Code Playgroud)
I would like to get :
Classement | Nom
1 | clem
2 | prisc
3 | karim
4 | prout
10 | caro
11 | flo
12 | raph
Run Code Online (Sandbox Code Playgroud)
Here is my code :
SELECT t.Classement
FROM tableau t
WHERE 1 = (SELECT …Run Code Online (Sandbox Code Playgroud) class Foo[T](t: T)(implicit int: Numeric[T]) {
val negated = -t
val doubled = t + t
val squared = t * t
// ...
}
Run Code Online (Sandbox Code Playgroud)
我在这里的所有三行上都有红色波浪线。是什么赋予了?
我有一个数据框,其中可能包含与数值混合的对象。
我的目标是将每个值更改为简单整数,但是其中一些值介于-数字之间。
一个最小的工作示例如下所示:
import pandas as pd
d = {'API':[float(4433), float(3344), 6666, '6-9-11', '8-0-11', 9990]}
df = pd.DataFrame(d)
Run Code Online (Sandbox Code Playgroud)
我尝试:
df['API'] = df['API'].str.replace('-','')
Run Code Online (Sandbox Code Playgroud)
但这给我留下了nan数字类型,因为它只在整个框架中搜索字符串。
输出是:
API
nan
nan
nan
6911
8011
nan
Run Code Online (Sandbox Code Playgroud)
我想要一个输出:
API
4433
3344
6666
6911
8011
9990
Run Code Online (Sandbox Code Playgroud)
所有类型都在的地方int。
有没有一种简单的方法可以只处理系列中的对象类型,但保持实际的数字不变?我在大型数据集(300,000 多行)上使用这种技术,因此类似lambda或 的东西series operations比循环搜索更受青睐。
numeric ×10
r ×4
batch-file ×1
character ×1
cmd ×1
converters ×1
datetime ×1
implicit ×1
integer ×1
numbers ×1
pandas ×1
posixct ×1
postgresql ×1
python ×1
python-3.x ×1
read.table ×1
scala ×1
sql ×1
sql-order-by ×1
sqlite ×1
types ×1
varchar ×1