我的数据集如下:
Date Value
1/1/1988 0.62
1/2/1988 0.64
1/3/1988 0.65
1/4/1988 0.66
1/5/1988 0.67
1/6/1988 0.66
1/7/1988 0.64
1/8/1988 0.66
1/9/1988 0.65
1/10/1988 0.65
1/11/1988 0.64
1/12/1988 0.66
1/13/1988 0.67
1/14/1988 0.66
1/15/1988 0.65
1/16/1988 0.64
1/17/1988 0.62
1/18/1988 0.64
1/19/1988 0.62
1/20/1988 0.62
1/21/1988 0.64
1/22/1988 0.62
1/23/1988 0.60
Run Code Online (Sandbox Code Playgroud)
我用这段代码来读取这些数据
df.set_index(df['Date'], drop=False, append=False, inplace=False, verify_integrity=False).drop('Date', 1)
Run Code Online (Sandbox Code Playgroud)
但问题是索引不是日期格式.那么问题是如何将此列设置为日期索引?
我使用以下格式从GPS接收纬度和经度:
纬度:78°55'44.29458"N
我需要将此数据转换为:
纬度:78.9288888889
我在这里找到了这个代码:链接
import re
def dms2dd(degrees, minutes, seconds, direction):
dd = float(degrees) + float(minutes)/60 + float(seconds)/(60*60);
if direction == 'E' or direction == 'N':
dd *= -1
return dd;
def dd2dms(deg):
d = int(deg)
md = abs(deg - d) * 60
m = int(md)
sd = (md - m) * 60
return [d, m, sd]
def parse_dms(dms):
parts = re.split('[^\d\w]+', dms)
lat = dms2dd(parts[0], parts[1], parts[2], parts[3])
return (lat)
dd = parse_dms("78°55'44.33324"N )
print(dd)
Run Code Online (Sandbox Code Playgroud)
它正在为这种格式工作
dd …Run Code Online (Sandbox Code Playgroud) 我在python 2.7中运行时没有问题,但是当我在python 3中运行时遇到错误.
我需要在此代码中更改某些内容.
import matplotlib as mpl
poly = mpl.path.Path(zip(listx,listy))
Run Code Online (Sandbox Code Playgroud)
我得到的错误是
TypeError: float() argument must be a string or a number, not 'zip'
Run Code Online (Sandbox Code Playgroud) 我在 pandas 数据框中有一个数据,例如:
\ndf = \n\n X1 X2 X3 Y\n0 1 2 10 5.077\n1 2 2 9 32.330\n2 3 3 5 65.140\n3 4 4 4 47.270\n4 5 2 9 80.570\nRun Code Online (Sandbox Code Playgroud)\n我想做多元回归分析。这里 Y 是因变量,x1、x2 和 x3 是自变量。\n每个自变量与因变量之间的相关性为:
\ndf.corr():\n\n X1 X2 X3 Y\nX1 1.000000 0.353553 -0.409644 0.896626\nX2 0.353553 1.000000 -0.951747 0.204882\nX3 -0.409644 -0.951747 1.000000 -0.389641\nY 0.896626 0.204882 -0.389641 1.000000\nRun Code Online (Sandbox Code Playgroud)\n\xe2\x80\x8b正如我们在这里看到的,y 与 x1 具有最高的相关性,所以我选择 x1 作为第一个自变量。在这个过程中,我尝试选择与 y 具有最高部分相关性的第二个自变量。在这种情况下如何找到偏相关?
\n我的文件夹组织如下所示。Type 1 和 Type 2 文件夹包含相同的文件,但我只想读取“type 2”文件夹中的文件。有没有简单的方法可以做到这一点?
我使用过此代码但无法阅读:
for file in os.listdir('Type 2'):
print file
Run Code Online (Sandbox Code Playgroud)
您的帮助将不胜感激!
我有一个时间序列数据集,其中包含一些 nan 值。我想去除这些数据的趋势:
我尝试这样做:
scipy.signal.detrend(y)
Run Code Online (Sandbox Code Playgroud)
然后我收到了这个错误:
ValueError: array must not contain infs or NaNs
Run Code Online (Sandbox Code Playgroud)
然后我尝试:
scipy.signal.detrend(y.dropna())
Run Code Online (Sandbox Code Playgroud)
但是我丢失了数据顺序。
如何解决这个问题?
假设我有维度为 (x,y) 的网格数据,并且值在 z 中。所以简单地我们可以通过以下方式制作三维散点图:
import numpy as np
import matplotlib.pyplot as plt
x = np.random.random(10)
y = np.random.random(10)
z = np.random.random(10)
plt.scatter(x, y, c = z, s=150, cmap = 'jet')
plt.show()
Run Code Online (Sandbox Code Playgroud)
我现在在想的是删除每个圆形散点图的线条颜色。而且我们可以把它变成方形而不是圆形吗??
我没有找到任何方法来做到这一点。您的帮助将不胜感激。
您好,我有一个包含每日数据的netcdf文件。文件的形状为(5844,89,89),即16年数据。我试图从每日数据中获取每月平均值。我正在寻找类似的resample功能在熊猫数据框中运行。无论如何在python中做到这一点。据我所知,使用cdo和nco进行计算非常容易,但是我正在使用python。
我用来读取netcdf文件的示例代码是:
import netCDF4
from netCDF4 import Dataset
fh = Dataset(ncfile, mode='r')
time = fh.variables['time'][:]
lon = fh.variables['longitude'][:]
lat = fh.variables['latitude'][:]
data = fh.variables['t2m'][:]
data.shape
Run Code Online (Sandbox Code Playgroud) 我从这里获取示例代码。
f1 = open('file1.txt', 'r')
f2 = open('file2.txt', 'w')
for line in f1:
f2.write(line.replace('old_text', 'new_text'))
f1.close()
f2.close()
Run Code Online (Sandbox Code Playgroud)
但是我不知道如何用各自的新词替换多个词。在这个例子中,如果我想找到一些喜欢的单词,(old_text1,old_text2,old_text3,old_text4)并用它们各自的新单词替换(new_text1,new_text2,new_text3,new_text4)。
提前致谢!
我有一个包含九列的每日时间序列数据帧.每列代表不同方法的测量值.我想仅在有两个以上的测量值时计算每日平均值,否则想要指定为NaN.如何用pandas dataframe做到这一点?
假设我的df看起来像:
0 1 2 3 4 5 6 7 8
2000-02-25 NaN 0.22 0.54 NaN NaN NaN NaN NaN NaN
2000-02-26 0.57 NaN 0.91 0.21 NaN 0.22 NaN 0.51 NaN
2000-02-27 0.10 0.14 0.09 NaN 0.17 NaN 0.05 NaN NaN
2000-02-28 NaN NaN NaN NaN NaN NaN NaN NaN 0.14
2000-02-29 0.82 NaN 0.75 NaN NaN NaN 0.14 NaN NaN
Run Code Online (Sandbox Code Playgroud)
我期待的平均价值如下:
0
2000-02-25 NaN
2000-02-26 0.48
2000-02-27 0.11
2000-02-28 NaN
2000-02-29 0.57
Run Code Online (Sandbox Code Playgroud) 我是Python的初学者。通过遵循这个示例,我尝试制作 Windrose 子图,例如:
但我以这种方式得到情节:
The code that I tried is:
ws = np.random.random(500) * 6
wd = np.random.random(500) * 360
fig=plt.figure()
rect=[0,0.5,0.4,0.4]
wa=WindroseAxes(fig, rect)
fig.add_axes(wa)
wa.bar(wd, ws, normed=True, opening=0.8, edgecolor='white')
fig1=plt.figure()
rect1=[0, 0.1, 0.4, 0.4]
wa1=WindroseAxes(fig1, rect1)
fig1.add_axes(wa1)
wa1.bar(wd, ws, normed=True, opening=0.8, edgecolor='white')
plt.show()
Run Code Online (Sandbox Code Playgroud)
任何帮助/建议表示赞赏。