小编unu*_*tbu的帖子

这是将UTC日期时间字符串转换为本地时间的正确方法吗?

这是将UTC字符串转换为允许夏令时的本地时间的正确方法吗?它看起来不错,但你永远不会知道:)

import time
UTC_STRING = "2010-03-25 02:00:00"
stamp = time.mktime(time.strptime(UTC_STRING,"%Y-%m-%d %H:%M:%S"))
stamp -= time.timezone
now   = time.localtime()
if now[8] == 1:
    stamp += 60*60
elif now[8] == -1:
    stamp -= 60*60
print 'UTC: ', time.gmtime(stamp)
print 'Local: ', time.localtime(stamp)
Run Code Online (Sandbox Code Playgroud)

---新西兰的结果(GMT + 12 dst = 1)---

UTC:  (2010, 3, 25, 2, 0, 0, 3, 84, 0)
Local:  (2010, 3, 25, 15, 0, 0, 3, 84, 1)
Run Code Online (Sandbox Code Playgroud)

python time

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

在R函数中替换循环

我是R的新手,我在查找如何在下面的函数中替换FOR循环时遇到了麻烦.该函数估计人口平均值.任何帮助都将非常感激.谢谢!

 myFunc<- function(){


myFRAME <- read.csv(file="2008short.csv",head=TRUE,sep=",")

meanTotal <- 0

for(i in 1:100)
{

mySample <- sample(myFRAME$TaxiIn, 100, replace = TRUE)

tempMean <- mean(mySample)

meanTotal <- meanTotal + tempMean


}

cat("Estimated Mean: ", meanTotal/100, "\n") #print result

}
Run Code Online (Sandbox Code Playgroud)

optimization loops r

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

如何定义一个在传递参数时重复自身的函数

是否有一种简单的方法来定义一个在传递参数时重复的函数?

例如,我已经定义了以下函数

(defun swap-sign ()
  (interactive)
  (search-forward-regexp "[+-]")
  (if (equal (match-string 0) "-")
      (replace-match "+")
    (replace-match "-"))
  )
Run Code Online (Sandbox Code Playgroud)

我想C-u swap-signswap-sign四次电话.

我试过了

(defun swap-sign (&optional num)
  (interactive)
  (let ((counter 0)
 (num (if num (string-to-number num) 0)))
    (while (<= counter num)
      (search-forward-regexp "[+-]")
      (if (equal (match-string 0) "-")
   (replace-match "+")
 (replace-match "-"))           
      (setq counter (1+ counter)))))
Run Code Online (Sandbox Code Playgroud)

C-u swap-sign仍然只运行交换符号(或者更准确地说,是while循环的主体)一次.我猜这是因为if num不是测试if num是否为空字符串的正确方法.

我是在正确的轨道上,还是有更好/更容易的扩展方式swap-sign

emacs elisp

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

用 BeautifulSoup 包装标签的内容

我试图用 BeautifulSoup 包装标签的内容。这:

<div class="footnotes">
    <p>Footnote 1</p>
    <p>Footnote 2</p>
</div>
Run Code Online (Sandbox Code Playgroud)

应该变成这样:

<div class="footnotes">
  <ol>
    <p>Footnote 1</p>
    <p>Footnote 2</p>
  </ol>
</div>
Run Code Online (Sandbox Code Playgroud)

所以我使用以下代码:

footnotes = soup.findAll("div", { "class" : "footnotes" })
footnotes_contents = ''
new_ol = soup.new_tag("ol") 
for content in footnotes[0].children:
    new_tag = soup.new_tag(content)
    new_ol.append(new_tag)

footnotes[0].clear()
footnotes[0].append(new_ol)

print footnotes[0]
Run Code Online (Sandbox Code Playgroud)

但我得到以下信息:

<div class="footnotes"><ol><
    ></
    ><<p>Footnote 1</p>></<p>Footnote 1</p>><
    ></
    ><<p>Footnote 2</p>></<p>Footnote 2</p>><
></
></ol></div>
Run Code Online (Sandbox Code Playgroud)

建议?

python lxml beautifulsoup

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

反转列表中的项目

我必须在Python中反转一个列表,我知道方法reverse()将完成这项工作.但是,我偶然发现了这段代码也完成了这项工作,但我无法完全理解它.

这是返回列表的函数.

def reverse(list):
    for i in range(len(list) // 2):
        list[i], list[len(list) -i -1] =  list[len(list) -i -1], list[i] 

    return list
Run Code Online (Sandbox Code Playgroud)

为什么循环遍历列表长度的一半?而且,我不理解第三行中的两个逗号.

python

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

在Python中对数组进行排序

我有以下数据结构:

 [[[   512    520     1 130523]]

 [[   520    614    573   7448]]

 [[   614    616    615    210]]

 [[   616    622    619    269]]

 [[   622    624    623    162]]

 [[   625    770    706   8822]]

 [[   770    776    773    241]]]
Run Code Online (Sandbox Code Playgroud)

我试图返回一个相同形状的对象,但只返回具有 3 个最大的第 4 列的行(如果有意义的话)(所以在这种情况下,这将是第 1、2 和 6 行)

最优雅的方法是什么?

python arrays numpy

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

获取Python中包含NaN的列表的平均值

我想知道如何获得包含一些NaN的列表的平均值.通过使用:

np.mean(mylist)
Run Code Online (Sandbox Code Playgroud)

预期的结果给出了NaN,这是错误的.我应该怎么做才能得到平均值?

python numpy

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

大熊猫获得每个类别的最高3分

我得到如下列表:

cat score name
a   80  fa
c   88  lu
b   36  li
b   96  liu
d   99  zc
b   76  mi
d   89  lu
a   50  fa
d   69  zhang
b   36  huang
d   59  guan
b   96  ka
b   86  chao
c   98  le
a   50  mi
a   90  zc
c   83  chao
b   66  guan
Run Code Online (Sandbox Code Playgroud)

如何使用大熊猫获得每只猫的最高3分?显示所有三行

python group-by greatest-n-per-group dataframe pandas

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

使用python pandas,合并数据框中的整数变为十进制

我有两个csv文件,所有数字字段都是int,没有小数.当我使用pandas merge函数连接两个数据帧时,我发现一个数据帧中的int字段都变为十进制,为什么会这样?

int变为十进制

pandas

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

Networkx 可以从不同的文件中读取节点和边吗?

我有一个包含这些节点的 csv 文件,每个节点都有相关的坐标,如下所示:

    node x y
    A1  67.8    15.53
    A2  108.74  15.53
    B1  67.8    25.33
    B2  108.74  25.33
    C1  67.8    30.22
    C2  108.74  30.22
    D1  67.8    37.99
    D2  108.74  37.99
    E1  67.8    43.84
Run Code Online (Sandbox Code Playgroud)

对于每个节点,我有另一个带边的文件,它表示每个连接节点之间的距离,如下所示:

   node1 node2 distance
   A1 A2 40.90
   A1 B1 9.8
   A2 B2 9.8
   B1 A1 9.8
   ...
Run Code Online (Sandbox Code Playgroud)

那么,我该怎么做才能将节点及其对应的边添加到同一个图中?

我试过这个,但它不起作用:

    import pandas as pd 
    import networkx as nx 
    import matplotlib.pyplot as plt
    import numpy

    nodes = pd.read_csv('nodes.csv')
    print nodes

    G = nx.Graph()

    for row in nodes.iterrows():
      G.add_node(row[1][0], x=row[1][2],y=row[1][3]) …
Run Code Online (Sandbox Code Playgroud)

python graph edges nodes networkx

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