小编smc*_*mci的帖子

替换字符串中的特定字符

我想从向量中的字符串中删除特定字符,类似于Excel中的" 查找和替换"功能.

以下是我开始的数据:

group <- data.frame(c("12357e", "12575e", "197e18", "e18947")
Run Code Online (Sandbox Code Playgroud)

我从第一栏开始; 我想通过删除e's 来生成第二列:

group       group.no.e
12357e      12357
12575e      12575
197e18      19718
e18947      18947
Run Code Online (Sandbox Code Playgroud)

regex replace r string-substitution gsub

251
推荐指数
5
解决办法
53万
查看次数

将DataFrame列类型从字符串转换为datetime

如何将字符串的DataFrame列(以dd/mm/yyyy格式)转换为日期时间?

python datetime-format dataframe python-datetime pandas

250
推荐指数
5
解决办法
34万
查看次数

使用标头解析C#中的CSV文件

是否有默认/官方/推荐的方法来解析C#中的CSV文件?我不想滚动自己的解析器.

此外,我已经看到人们使用ODBC/OLE DB通过Text驱动程序读取CSV的实例,很多人由于其"缺点"而不鼓励这种情况.这些缺点是什么?

Ideally, I'm looking for a way through which I can read the CSV by column name, using the first record as the header/field names. Some of the answers given are correct but work to basically deserialize the file into classes.

c# csv io file-io header

248
推荐指数
10
解决办法
30万
查看次数

找到两个字符串之间的相似性度量

如何在Python中获得字符串与另一个字符串类似的概率?

我想获得像0.9(意味着90%)等十进制值.最好使用标准的Python和库.

例如

similar("Apple","Appel") #would have a high prob.

similar("Apple","Mango") #would have a lower prob.
Run Code Online (Sandbox Code Playgroud)

python probability similarity metric

245
推荐指数
11
解决办法
17万
查看次数

Pandas - 获取给定列的第一行值

这似乎是一个非常简单的问题...但我没有看到我期待的简单答案.

那么,如何在Pandas的给定列的第n行获取值?(我对第一行特别感兴趣,但也会对更普遍的做法感兴趣).

例如,假设我想将Btime中的1.2值作为变量.

这是正确的方法吗?

df_test =

  ATime   X   Y   Z   Btime  C   D   E
0    1.2  2  15   2    1.2  12  25  12
1    1.4  3  12   1    1.3  13  22  11
2    1.5  1  10   6    1.4  11  20  16
3    1.6  2   9  10    1.7  12  29  12
4    1.9  1   1   9    1.9  11  21  19
5    2.0  0   0   0    2.0   8  10  11
6    2.4  0   0   0    2.4  10  12  15
Run Code Online (Sandbox Code Playgroud)

python indexing head pandas

236
推荐指数
8
解决办法
42万
查看次数

将对象附加到R中的列表中,以分摊的常量时间O(1)?

如果我有一些R列表mylist,你可以obj像这样附加一个项目:

mylist[[length(mylist)+1]] <- obj
Run Code Online (Sandbox Code Playgroud)

但肯定有一些更紧凑的方式.当我在R的新人时,我尝试这样写lappend():

lappend <- function(lst, obj) {
    lst[[length(lst)+1]] <- obj
    return(lst)
}
Run Code Online (Sandbox Code Playgroud)

但是当然由于R的逐个调用语义而无法正常工作(lst在调用时有效复制,所以更改lst在范围之外是不可见的lappend().我知道你可以在R函数中做环境黑客攻击到达外部你的函数范围和mutate调用环境,但这似乎是一个大锤子写一个简单的追加函数.

任何人都可以建议一个更美丽的方式吗?奖励点,如果它适用于矢量和列表.

performance big-o r list append

235
推荐指数
8
解决办法
30万
查看次数

如何使用点"." 访问字典成员?

如何通过点"."访问Python字典成员?

例如,mydict['val']我不想写作,而是写作mydict.val.

此外,我想以这种方式访问​​嵌套的dicts.例如

mydict.mydict2.val 
Run Code Online (Sandbox Code Playgroud)

会参考

mydict = { 'mydict2': { 'val': ... } }
Run Code Online (Sandbox Code Playgroud)

python syntax dictionary nested

230
推荐指数
17
解决办法
13万
查看次数

如何将Pandas的"apply"功能用于多个列?

当使用具有以下数据帧的多个列时,我在使用Pandas应用函数时遇到一些问题

df = DataFrame ({'a' : np.random.randn(6),
                 'b' : ['foo', 'bar'] * 3,
                 'c' : np.random.randn(6)})
Run Code Online (Sandbox Code Playgroud)

以及以下功能

def my_test(a, b):
    return a % b
Run Code Online (Sandbox Code Playgroud)

当我尝试应用此功能时:

df['Value'] = df.apply(lambda row: my_test(row[a], row[c]), axis=1)
Run Code Online (Sandbox Code Playgroud)

我收到错误消息:

NameError: ("global name 'a' is not defined", u'occurred at index 0')
Run Code Online (Sandbox Code Playgroud)

我不明白这个消息,我正确地定义了这个名字.

我非常感谢你对这个问题的任何帮助

更新

谢谢你的帮助.我确实用代码做了一些语法错误,索引应该放''.但是我使用更复杂的功能仍然存在同样的问题,例如:

def my_test(a):
    cum_diff = 0
    for ix in df.index():
        cum_diff = cum_diff + (a - df['a'][ix])
    return cum_diff 
Run Code Online (Sandbox Code Playgroud)

谢谢

python apply dataframe python-2.7 pandas

228
推荐指数
4
解决办法
38万
查看次数

异常后如何重试?

我有一个循环开始for i in range(0, 100).通常它运行正常,但有时它会因网络状况而失败.目前我设置它以便在失败时,它将continue在except子句中(继续到下一个数字i).

我是否可以重新分配相同的数字i并再次运行循环的失败迭代?

python loops exception try-except

220
推荐指数
14
解决办法
22万
查看次数

测试变量是否为列表或元组

在python中,测试变量是否包含列表或元组的最佳方法是什么?(即一个集合)

像这里建议的那样是邪恶吗?http://www.canonical.org/~kragen/isinstance/

更新:我想要将列表与字符串区分开来的最常见原因是当我有一些无限深度的嵌套树/数据结构列表中的字符串列表等列表时,我正在使用递归算法进行探索,我需要知道我何时击中"叶子"节点.

python types list

215
推荐指数
10
解决办法
28万
查看次数