有没有比bdate_range()更好的方法来测量两个日期之间通过熊猫的工作日?
df = pd.DataFrame({ 'A' : ['1/1/2013', '2/2/2013', '3/3/2013'],
'B': ['1/12/2013', '4/4/2013', '3/3/2013']})
print df
df['A'] = pd.to_datetime(df['A'])
df['B'] = pd.to_datetime(df['B'])
f = lambda x: len(pd.bdate_range(x['A'], x['B']))
df['DIFF'] = df.apply(f, axis=1)
print df
Run Code Online (Sandbox Code Playgroud)
输出:
A B
0 1/1/2013 1/12/2013
1 2/2/2013 4/4/2013
2 3/3/2013 3/3/2013
A B DIFF
0 2013-01-01 00:00:00 2013-01-12 00:00:00 9
1 2013-02-02 00:00:00 2013-04-04 00:00:00 44
2 2013-03-03 00:00:00 2013-03-03 00:00:00 0
Run Code Online (Sandbox Code Playgroud)
谢谢!
Dataframe:
one two
a 1 x
b 1 y
c 2 y
d 2 z
e 3 z
grp = DataFrame.groupby('one')
grp.agg(lambda x: ???) #or equivalent function
Run Code Online (Sandbox Code Playgroud)
来自grp.agg的所需输出:
one two
1 x|y
2 y|z
3 z
Run Code Online (Sandbox Code Playgroud)
在集成数据帧之前我的agg函数是"|".join(sorted(set(x))).理想情况下,我希望组中有任意数量的列,并且agg返回"|".join(sorted(set())每个列项,如上面的两个.我也试过了np.char.join().
爱熊猫,它带我从一个800线复杂的程序到一个400线的步行放大公园.谢谢 :)
我想用selenium进行测试.在使用此文本"这是WebDriver服务器的初始启动页面"启动IE 8后,IE给出了模态错误:
from selenium import webdriver
import time
browser = webdriver.Ie() # Get local session of IE
browser.get("http://www.google.com") # Load page
time.sleep(5)
browser.close()
Run Code Online (Sandbox Code Playgroud)
所以我尝试了Chrome.
from selenium import webdriver
browser = webdriver.Chrome()
browser.get("http://www.google.com")
time.sleep(5)
browser.close()
Run Code Online (Sandbox Code Playgroud)
和没有正确路径到chrome.exe应用程序的Selenium错误.Chrome已按预期安装... C:\ Users \%USERNAME%\ AppData\Local\Google\Chrome\Application\chrome.exe
这里的一点帮助将不胜感激.