Python:计算两天之间的天数

时间:2019-09-16 20:42:36

标签: python-3.x pandas numpy datetime timedelta

我有两个数组,引用数组和目标数组。每个阵列都有一年中的一天(DOY)信息,我试图找出两者之间实际天数的差异。这是代码,

import numpy as np

array_ref = np.array([[362,284],[89,360]])
array_ref
array([[362, 284],
       [ 89, 360]])

array_n = np.array([[2, 365], [194, 10]])
array_n
array([[  2, 365],
       [194,  10]])

绝对差给出了这一点,

print(abs(array_ref-array_n))
[[360  81]
 [105 350]]

但是,我正在努力实现这一目标,

[[5, 81]
 [105, 15]]

我不确定是否必须使用任何datetimetimedelta函数,或者是否有更简单的方法来实现此目的。感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

除以余数。

"dependencies": {
    "@types/node": "*",
    "@types/react-select": "*",
    "antd": "2.10.0",
    "babel-polyfill": "6.23.0",
    "download": "6.2.5",
    "draft-js": "^0.11.0",
    "immutable": "3.8.2",
    "jquery": "^3.4.1",
    "moment": "*",
    "react": "*",
    "react-dom": "*",
    "react-lazy-load": "^3.0.13",
    "react-redux": "*",
    "react-router-dom": "*",
    "react-router-redux": "*",
    "redux": "3.6.0",
    "redux-saga": "0.14.8",
    "reselect": "3.0.1",
    "webpack-cli": "^3.3.8",
    "whatwg-fetch": "^3.0.0"
  },
  "devDependencies": {
    "@types/react": "^16.9.2",
    "@types/react-dom": "0.14.23",
    "@types/react-redux": "4.4.40",
    "@types/react-router-dom": "^4.3.5",
    "@types/react-router-redux": "5.0.0",
    "ajv": "^6.10.2",
    "awesome-typescript-loader": "3.1.2",
    "babel-core": "6.26.3",
    "babel-loader": "7.1.5",
    "babel-plugin-transform-es2015-parameters": "6.24.1",
    "babel-preset-env": "1.7.0",
    "css-loader": "*",
    "less": "2.7.3",
    "less-loader": "4.1.0",
    "source-map-loader": "0.2.1",
    "style-loader": "0.17.0",
    "ts-loader": "2.0.3",
    "typescript": "2.2.1",
    "webpack": "^4.40.2"
  }

通常,您可能要检查哪个减法比较近:

import cv2

image = cv2.imread('4.jpg')
gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY) 
blur = cv2.medianBlur(gray, 25)
thresh = cv2.adaptiveThreshold(blur,255,cv2.ADAPTIVE_THRESH_GAUSSIAN_C, cv2.THRESH_BINARY_INV,27,6)

kernel = cv2.getStructuringElement(cv2.MORPH_RECT, (3,3))
close = cv2.morphologyEx(thresh, cv2.MORPH_CLOSE, kernel, iterations=1)
dilate = cv2.dilate(close, kernel, iterations=2)

cnts = cv2.findContours(dilate, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)
cnts = cnts[0] if len(cnts) == 2 else cnts[1]
cnts = sorted(cnts, key=cv2.contourArea, reverse=True)[:10]

minimum_area = 500
for c in cnts:
    area = cv2.contourArea(c)
    if area > minimum_area:
        # Find centroid
        M = cv2.moments(c)
        cX = int(M["m10"] / M["m00"])
        cY = int(M["m01"] / M["m00"])
        cv2.circle(image, (cX, cY), 20, (36, 255, 12), 2) 
        x,y,w,h = cv2.boundingRect(c)
        cv2.putText(image, 'Radius: {}'.format(w/2), (10,20), cv2.FONT_HERSHEY_SIMPLEX, 0.5, (36,255,12), 2)
        break

cv2.imshow('thresh', thresh)
cv2.imshow('close', close)
cv2.imshow('image', image)
cv2.waitKey()

尽管这显然不会考虑leap年。