'Update and add new entry on array of objects in javascript [duplicate]
I have to compare two arrays of objects "like - array1, array2" if we found extra row on "array2" we have to add the row to the "array1" and if we found any update on the "array2" in any key we have to update on "array1"
I just added an "expectedArray" in my question and added some comments for reference
const array1 = [
{
"SiteName": "NJ",
"LocationName": "NJ_1_1",
"Lat_GDA94": -18.95521242,
"Long_GDA94": 53.45254241,
"Camera_ID": "NJ001",
"SDCard": "Card001",
"Camera_Model": "Swift ENDURO 4G",
"CamHeight_cm": 550,
"FocalDistance_m": 1.5,
"Lure": "N/A",
"DateSet": "06 07 2020",
"SetBy": "D Brook",
"DateRetrieved": "28 04 2021",
"RetrievedBy": "D Brook"
},
{
"SiteName": "NJ",
"LocationName": "NJ_6_1",
"Lat_GDA94": 28.97906497,
"Long_GDA94": 15.44272058,
"Camera_ID": "NJ005",
"SDCard": "Card001",
"Camera_Model": "Swift ENDURO 4G",
"CamHeight_cm": 550,
"FocalDistance_m": 1.5,
"Lure": "N/A",
"DateSet": "08 07 2020",
"SetBy": "D Brook",
"DateRetrieved": "28 04 2021",
"RetrievedBy": "D Brook"
},
{
"SiteName": "TM",
"LocationName": "TM_1_1",
"Lat_GDA94": 59.1833467,
"Long_GDA94": 13.30937045,
"Camera_ID": "T002",
"SDCard": "Card001",
"Camera_Model": "Swift ENDURO 4G",
"CamHeight_cm": 550,
"FocalDistance_m": 1.5,
"Lure": "N/A",
"DateSet": "16 07 2020",
"SetBy": "D Brook",
"DateRetrieved": "28 04 2021",
"RetrievedBy": "D Brook"
}
]
const array2 = [
{
"SiteName": "NJ",
"LocationName": "NJ_1_1",
"Lat_GDA94": -16.95521242,
"Long_GDA94": 51.45254241,
"Camera_ID": "NJ001",
"SDCard": "Card001",
"Camera_Model": "Swift ENDURO 4G",
"CamHeight_cm": 550,
"FocalDistance_m": 1.5,
"Lure": "N/A",
"DateSet": "06 07 2020",
"SetBy": "D Brook",
"DateRetrieved": "28 04 2021",
"RetrievedBy": "D Brook"
},
{
"SiteName": "TM",
"LocationName": "TM_2_1",
"Lat_GDA94": -29.18264832,
"Long_GDA94": 153.30860292,
"Camera_ID": "T005",
"SDCard": "Card001",
"Camera_Model": "Swift ENDURO 4G",
"CamHeight_cm": 550,
"FocalDistance_m": 1.5,
"Lure": "N/A",
"DateSet": "16 07 2020",
"SetBy": "D Brook",
"DateRetrieved": "28 04 2021",
"RetrievedBy": "D Brook"
},
{
"SiteName": "TM",
"LocationName": "TM_2_2",
"Lat_GDA94": -29.18248722,
"Long_GDA94": 153.30905411,
"Camera_ID": "T003",
"SDCard": "Card001",
"Camera_Model": "Swift ENDURO 4G",
"CamHeight_cm": 550,
"FocalDistance_m": 1.5,
"Lure": "N/A",
"DateSet": "16 07 2020",
"SetBy": "D Brook",
"DateRetrieved": "28 04 2021",
"RetrievedBy": "D Brook"
},
{
"SiteName": "HH",
"LocationName": "HH1_1_1",
"Lat_GDA94": -29.20880782,
"Long_GDA94": 153.31918423,
"Camera_ID": "B001",
"SDCard": "Card001",
"Camera_Model": "Swift ENDURO 4G",
"CamHeight_cm": 550,
"FocalDistance_m": 1.5,
"Lure": "N/A",
"DateSet": "04 08 2020",
"SetBy": "D Brook",
"DateRetrieved": "28 04 2021",
"RetrievedBy": "D Brook"
}
]
const expectedArray = [{
"SiteName": "NJ",
"LocationName": "NJ_1_1",
"Lat_GDA94": -16.95521242, // updated entry existing row
"Long_GDA94": 51.45254241, // updated entry existing row
"Camera_ID": "NJ001",
"SDCard": "Card001",
"Camera_Model": "Swift ENDURO 4G",
"CamHeight_cm": 550,
"FocalDistance_m": 1.5,
"Lure": "N/A",
"DateSet": "06 07 2020",
"SetBy": "D Brook",
"DateRetrieved": "28 04 2021",
"RetrievedBy": "D Brook"
},
{
"SiteName": "NJ",
"LocationName": "NJ_6_1",
"Lat_GDA94": 28.97906497,
"Long_GDA94": 15.44272058,
"Camera_ID": "NJ005",
"SDCard": "Card001",
"Camera_Model": "Swift ENDURO 4G",
"CamHeight_cm": 550,
"FocalDistance_m": 1.5,
"Lure": "N/A",
"DateSet": "08 07 2020",
"SetBy": "D Brook",
"DateRetrieved": "28 04 2021",
"RetrievedBy": "D Brook"
},
{
"SiteName": "TM",
"LocationName": "TM_1_1",
"Lat_GDA94": 59.1833467,
"Long_GDA94": 13.30937045,
"Camera_ID": "T002",
"SDCard": "Card001",
"Camera_Model": "Swift ENDURO 4G",
"CamHeight_cm": 550,
"FocalDistance_m": 1.5,
"Lure": "N/A",
"DateSet": "16 07 2020",
"SetBy": "D Brook",
"DateRetrieved": "28 04 2021",
"RetrievedBy": "D Brook"
},
{
"SiteName": "TM",
"LocationName": "TM_2_1", // added new row
"Lat_GDA94": -29.18264832,
"Long_GDA94": 153.30860292,
"Camera_ID": "T005",
"SDCard": "Card001",
"Camera_Model": "Swift ENDURO 4G",
"CamHeight_cm": 550,
"FocalDistance_m": 1.5,
"Lure": "N/A",
"DateSet": "16 07 2020",
"SetBy": "D Brook",
"DateRetrieved": "28 04 2021",
"RetrievedBy": "D Brook"
},
{
"SiteName": "TM",
"LocationName": "TM_2_2", // added new row
"Lat_GDA94": -29.18248722,
"Long_GDA94": 153.30905411,
"Camera_ID": "T003",
"SDCard": "Card001",
"Camera_Model": "Swift ENDURO 4G",
"CamHeight_cm": 550,
"FocalDistance_m": 1.5,
"Lure": "N/A",
"DateSet": "16 07 2020",
"SetBy": "D Brook",
"DateRetrieved": "28 04 2021",
"RetrievedBy": "D Brook"
},
{
"SiteName": "HH",
"LocationName": "HH1_1_1", // added new row
"Lat_GDA94": -29.20880782,
"Long_GDA94": 153.31918423,
"Camera_ID": "B001",
"SDCard": "Card001",
"Camera_Model": "Swift ENDURO 4G",
"CamHeight_cm": 550,
"FocalDistance_m": 1.5,
"Lure": "N/A",
"DateSet": "04 08 2020",
"SetBy": "D Brook",
"DateRetrieved": "28 04 2021",
"RetrievedBy": "D Brook"
}
]
I just added an "expectedArray" in my question and added some comments for reference
Solution 1:[1]
You have to make sure to pass every group level of lithology
to kruskal.test()
.
test <- kruskal.test(branchsize$lithology ~ branchsize$size)
#test <- kruskal.test(lithology ~ size, data = branchsize) # equivalently
#test <- with(branchsize, kruskal.test(lithology ~ size)) # equivalently
# -----------------------------------------------------------------------
> test$statistic
Kruskal-Wallis chi-squared
105.3318 # H value
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
Solution | Source |
---|---|
Solution 1 |