perl在进行汉字操作之前要先转码,不然无法正确操作。
use Encode;
$s=’汉字’;
$str=decode ‘utf8’,$s; #######或者gb2312之类的
$len=length($str); ######这样就可以正确得到汉字字符串的长度了
perl在进行汉字操作之前要先转码,不然无法正确操作。
use Encode;
$s=’汉字’;
$str=decode ‘utf8’,$s; #######或者gb2312之类的
$len=length($str); ######这样就可以正确得到汉字字符串的长度了
参考http://www.cnblogs.com/tsingke/p/6194737.html
采用box-muller方法:
#include
#include
double gaussrand2(double mu,double sigma){
static double u,v;
static int phase=0;
double z;
if(phase==0){
u=rand()/(RAND_MAX+1.0);
v=rand()/(RAND_MAX+1.0);
z=sqrt(-2.0*log(u))*sin(2.0*pi*v);
}
else{
z=sqrt(-2.0*log(u))*cos(2.0*pi*v);
}
phase=1-phase;
return(mu+z*sigma);
}
1. fortran中的函数名全部用小写,记得带下划线,如func_
2. 参数必须是地址
3. 编译时加上-lgfortran
import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.basemap import Basemap
from obspy import read_events
from obspy.imaging.beachball import beach
event = read_events( 'https://earthquake.usgs.gov/archive/product/moment-tensor/' 'us_20005ysu_mww/us/1470868224040/quakeml.xml', format='QUAKEML')[0]
origin = event.preferred_origin() or event.origins[0]
ocmec = event.preferred_focal_mechanism() or event.focal_mechanisms[0]
tensor = focmec.moment_tensor.tensor
import time
a='1987-06-05 12:31:28'
tm=time.strptime(a,'%Y-%m-%d %H:%M:%S')
epo_time=time.mktime(tm)
import matplotlib.pyplot as plt
import matplotlib.dates as dates
ax.xaxis.set_minor_locator(dates.YearLocator())
ax.xaxis.set_major_locator(dates.YearLocator(5))
可以自己写个简单函数,也可以使用math模块下的modf函数
import math
a,b=math.modf(32.005)
print a,b
a=0.005000000000002558
b=32.0
*****注意a,b都是浮点型
比如a=[‘123.45′,’234.56’]这样一个用字符串表达的数值列表,需要快速转换成浮点型列表,可以用循环,高效一点可以用列表生成器,如[float(i) for i in a]
还可以用numpy中的astype函数,如
import numpy as np
np.array(a).astype(float)
还可以用map函数map(float,a)
已经有了pandas数据框格式的地震目录,需要获取日期的datetime数值,并存储到新的一列dt中,可以这么操作
cata['dt']=cata.apply(lambda x: datetime(x['yr'],x['mn'],x['dy']),axis=1)
这个是按行操作的,很慢。
或者用pandas的to_datetime方法:
pd.to_datetime(df['year'].astype(str) + '-'+ df['month'].astype(str)+ '-1')
而批量操作不行,比如
datetime(x['yr'],x['mn'],x['dy'])
因为datetime不支持pandas的批量操作。
https://docs.scipy.org/doc/numpy/reference/generated/numpy.c_.html
Examples
>>> np.c_[np.array([1,2,3]), np.array([4,5,6])]
array([[1, 4], [2, 5], [3, 6]])
>>> np.c_[np.array([[1,2,3]]), 0, 0, np.array([[4,5,6]])]
array([[1, 2, 3, 0, 0, 4, 5, 6]])