Hi Community
Im want to extract only the names of the list files and avoid .jpg
I have problem because some string have a space between G and numbers and my regular expression don't is sensitive for this character. Others have numbers next to final letter.
library(tidyverse)
datos <- data.frame(Accesionfiles=c("G 1678.jpg", "G 2220.jpg", "G 7290E.jpg", "G 7313D.jpg", "G 7365B.jpg",
"G 9399.jpg", "G 9460.jpg", "G 9535.jpg", "G 9837.jpg", "G10468.jpg",
"G10483.jpg", "G10511.jpg", "G10513.jpg", "G10518.jpg", "G10526.jpg",
"G10530.jpg", "G10552.jpg", "G10559.jpg", "G10560.jpg", "G10565.jpg",
"G10587.jpg", "G10589.jpg", "G10590.jpg", "G10601.jpg", "G10617.jpg",
"G10635.jpg", "G10659.jpg", "G10675.jpg", "G10679.jpg", "G10688.jpg",
"G10718.jpg", "G10752.jpg", "G10877.jpg", "G10934.jpg", "G11701B.jpg",
"G11776A.jpg", "G11782B.jpg", "G11869.jpg", "G12063B.jpg", "G12175.jpg",
"G12190.jpg", "G12400A.jpg", "G12472.jpg", "G12611.jpg", "G12695.jpg",
"G12705.jpg", "G13940A.jpg", "G13941.jpg", "G14059.jpg", "G14449A.jpg",
"G14602.jpg", "G14674.jpg", "G15265.jpg", "G18109.jpg", "G18299.jpg",
"G18735.jpg", "G19545C.jpg", "G19567A.jpg", "G19847.jpg", "G19852A.jpg",
"G20364.jpg", "G21011.jpg", "G21161.jpg", "G21501.jpg", "G21973.jpg",
"G23066.jpg", "G23072B.jpg", "G23076.jpg", "G23565B.jpg", "G23569A.jpg",
"G23768J.jpg", "G23790.jpg", "G23793.jpg", "G23817A.jpg", "G23818D.jpg",
"G23823D.jpg", "G23826D.jpg", "G23860I.jpg", "G23986C.jpg", "G24015I.jpg",
"G24041C.jpg", "G24065A.jpg", "G24118.jpg", "G24533C.jpg", "G24581C.jpg",
"G24707E.jpg", "G24764B.jpg", "G24764D.jpg", "G24765.jpg", "G24765V1.jpg",
"G24767L.jpg", "G24941.jpg", "G26023.jpg", "G35002.jpg", "G35043.jpg",
"G35047.jpg", "G35057.jpg", "G35075.jpg", "G35083.jpg", "G35086.jpg"))
# this have a problem with spaces
datos |> mutate(Accesion = str_extract(Accesionfiles, "([A-Za-z+0-9]+)(?!\\.jpg)"), .before = Accesionfiles) |>
mutate(Accesion_Junto= gsub("\\s+", "", Accesion));datos
# Accesion Accesionfiles Accesion_Junto
# 1 G G 1678.jpg G
# 2 G G 2220.jpg G
# 3 G G 7290E.jpg G
# 4 G G 7313D.jpg G
# 5 G G 7365B.jpg G
# 6 G G 9399.jpg G
# 7 G G 9460.jpg G
# 8 G G 9535.jpg G
# 9 G G 9837.jpg G
# 10 G1046 G10468.jpg G1046
# 11 G1048 G10483.jpg G1048
# 12 G1051 G10511.jpg G1051
# 13 G1051 G10513.jpg G1051
# 14 G1051 G10518.jpg G1051
# 15 G1052 G10526.jpg G1052
# 16 G1053 G10530.jpg G1053
# 17 G1055 G10552.jpg G1055
# 18 G1055 G10559.jpg G1055
# 19 G1056 G10560.jpg G1056
# 20 G1056 G10565.jpg G1056
# 21 G1058 G10587.jpg G1058
# 22 G1058 G10589.jpg G1058
# 23 G1059 G10590.jpg G1059
# 24 G1060 G10601.jpg G1060
# 25 G1061 G10617.jpg G1061
# 26 G1063 G10635.jpg G1063
# 27 G1065 G10659.jpg G1065
# 28 G1067 G10675.jpg G1067
# 29 G1067 G10679.jpg G1067
# 30 G1068 G10688.jpg G1068
# 31 G1071 G10718.jpg G1071
# 32 G1075 G10752.jpg G1075
# 33 G1087 G10877.jpg G1087
# 34 G1093 G10934.jpg G1093
# 35 G11701 G11701B.jpg G11701
# 36 G11776 G11776A.jpg G11776
# 37 G11782 G11782B.jpg G11782
# 38 G1186 G11869.jpg G1186
# 39 G12063 G12063B.jpg G12063
# 40 G1217 G12175.jpg G1217
# 41 G1219 G12190.jpg G1219
# 42 G12400 G12400A.jpg G12400
# 43 G1247 G12472.jpg G1247
# 44 G1261 G12611.jpg G1261
# 45 G1269 G12695.jpg G1269
# 46 G1270 G12705.jpg G1270
# 47 G13940 G13940A.jpg G13940
# 48 G1394 G13941.jpg G1394
# 49 G1405 G14059.jpg G1405
# 50 G14449 G14449A.jpg G14449
# 51 G1460 G14602.jpg G1460
# 52 G1467 G14674.jpg G1467
# 53 G1526 G15265.jpg G1526
# 54 G1810 G18109.jpg G1810
# 55 G1829 G18299.jpg G1829
# 56 G1873 G18735.jpg G1873
# 57 G19545 G19545C.jpg G19545
# 58 G19567 G19567A.jpg G19567
# 59 G1984 G19847.jpg G1984
# 60 G19852 G19852A.jpg G19852
# 61 G2036 G20364.jpg G2036
# 62 G2101 G21011.jpg G2101
# 63 G2116 G21161.jpg G2116
# 64 G2150 G21501.jpg G2150
# 65 G2197 G21973.jpg G2197
# 66 G2306 G23066.jpg G2306
# 67 G23072 G23072B.jpg G23072
# 68 G2307 G23076.jpg G2307
# 69 G23565 G23565B.jpg G23565
# 70 G23569 G23569A.jpg G23569
# 71 G23768 G23768J.jpg G23768
# 72 G2379 G23790.jpg G2379
# 73 G2379 G23793.jpg G2379
# 74 G23817 G23817A.jpg G23817
# 75 G23818 G23818D.jpg G23818
# 76 G23823 G23823D.jpg G23823
# 77 G23826 G23826D.jpg G23826
# 78 G23860 G23860I.jpg G23860
# 79 G23986 G23986C.jpg G23986
# 80 G24015 G24015I.jpg G24015
# 81 G24041 G24041C.jpg G24041
# 82 G24065 G24065A.jpg G24065
# 83 G2411 G24118.jpg G2411
# 84 G24533 G24533C.jpg G24533
# 85 G24581 G24581C.jpg G24581
# 86 G24707 G24707E.jpg G24707
# 87 G24764 G24764B.jpg G24764
# 88 G24764 G24764D.jpg G24764
# 89 G2476 G24765.jpg G2476
# 90 G24765V G24765V1.jpg G24765V
# 91 G24767 G24767L.jpg G24767
# 92 G2494 G24941.jpg G2494
# 93 G2602 G26023.jpg G2602
# 94 G3500 G35002.jpg G3500
# 95 G3504 G35043.jpg G3504
# 96 G3504 G35047.jpg G3504
# 97 G3505 G35057.jpg G3505
# 98 G3507 G35075.jpg G3507
# 99 G3508 G35083.jpg G3508
# 100 G3508 G35086.jpg G3508
# this run wel but no for this rows (G24765V1.jpg) because have extra number netx the final letter.
datos |> mutate(Accesion = str_extract(Accesionfiles, "[A-Za-z\\s]+\\s*[0-9]+[^.jpg]"), .before = Accesionfiles) |>
mutate(Accesion_Junto= gsub("\\s+", "", Accesion));datos
# Accesion Accesionfiles Accesion_Junto
# 1 G 1678 G 1678.jpg G1678
# 2 G 2220 G 2220.jpg G2220
# 3 G 7290E G 7290E.jpg G7290E
# 4 G 7313D G 7313D.jpg G7313D
# 5 G 7365B G 7365B.jpg G7365B
# 6 G 9399 G 9399.jpg G9399
# 7 G 9460 G 9460.jpg G9460
# 8 G 9535 G 9535.jpg G9535
# 9 G 9837 G 9837.jpg G9837
# 10 G10468 G10468.jpg G10468
# 11 G10483 G10483.jpg G10483
# 12 G10511 G10511.jpg G10511
# 13 G10513 G10513.jpg G10513
# 14 G10518 G10518.jpg G10518
# 15 G10526 G10526.jpg G10526
# 16 G10530 G10530.jpg G10530
# 17 G10552 G10552.jpg G10552
# 18 G10559 G10559.jpg G10559
# 19 G10560 G10560.jpg G10560
# 20 G10565 G10565.jpg G10565
# 21 G10587 G10587.jpg G10587
# 22 G10589 G10589.jpg G10589
# 23 G10590 G10590.jpg G10590
# 24 G10601 G10601.jpg G10601
# 25 G10617 G10617.jpg G10617
# 26 G10635 G10635.jpg G10635
# 27 G10659 G10659.jpg G10659
# 28 G10675 G10675.jpg G10675
# 29 G10679 G10679.jpg G10679
# 30 G10688 G10688.jpg G10688
# 31 G10718 G10718.jpg G10718
# 32 G10752 G10752.jpg G10752
# 33 G10877 G10877.jpg G10877
# 34 G10934 G10934.jpg G10934
# 35 G11701B G11701B.jpg G11701B
# 36 G11776A G11776A.jpg G11776A
# 37 G11782B G11782B.jpg G11782B
# 38 G11869 G11869.jpg G11869
# 39 G12063B G12063B.jpg G12063B
# 40 G12175 G12175.jpg G12175
# 41 G12190 G12190.jpg G12190
# 42 G12400A G12400A.jpg G12400A
# 43 G12472 G12472.jpg G12472
# 44 G12611 G12611.jpg G12611
# 45 G12695 G12695.jpg G12695
# 46 G12705 G12705.jpg G12705
# 47 G13940A G13940A.jpg G13940A
# 48 G13941 G13941.jpg G13941
# 49 G14059 G14059.jpg G14059
# 50 G14449A G14449A.jpg G14449A
# 51 G14602 G14602.jpg G14602
# 52 G14674 G14674.jpg G14674
# 53 G15265 G15265.jpg G15265
# 54 G18109 G18109.jpg G18109
# 55 G18299 G18299.jpg G18299
# 56 G18735 G18735.jpg G18735
# 57 G19545C G19545C.jpg G19545C
# 58 G19567A G19567A.jpg G19567A
# 59 G19847 G19847.jpg G19847
# 60 G19852A G19852A.jpg G19852A
# 61 G20364 G20364.jpg G20364
# 62 G21011 G21011.jpg G21011
# 63 G21161 G21161.jpg G21161
# 64 G21501 G21501.jpg G21501
# 65 G21973 G21973.jpg G21973
# 66 G23066 G23066.jpg G23066
# 67 G23072B G23072B.jpg G23072B
# 68 G23076 G23076.jpg G23076
# 69 G23565B G23565B.jpg G23565B
# 70 G23569A G23569A.jpg G23569A
# 71 G23768J G23768J.jpg G23768J
# 72 G23790 G23790.jpg G23790
# 73 G23793 G23793.jpg G23793
# 74 G23817A G23817A.jpg G23817A
# 75 G23818D G23818D.jpg G23818D
# 76 G23823D G23823D.jpg G23823D
# 77 G23826D G23826D.jpg G23826D
# 78 G23860I G23860I.jpg G23860I
# 79 G23986C G23986C.jpg G23986C
# 80 G24015I G24015I.jpg G24015I
# 81 G24041C G24041C.jpg G24041C
# 82 G24065A G24065A.jpg G24065A
# 83 G24118 G24118.jpg G24118
# 84 G24533C G24533C.jpg G24533C
# 85 G24581C G24581C.jpg G24581C
# 86 G24707E G24707E.jpg G24707E
# 87 G24764B G24764B.jpg G24764B
# 88 G24764D G24764D.jpg G24764D
# 89 G24765 G24765.jpg G24765
# 90 G24765V G24765V1.jpg G24765V
# 91 G24767L G24767L.jpg G24767L
# 92 G24941 G24941.jpg G24941
# 93 G26023 G26023.jpg G26023
# 94 G35002 G35002.jpg G35002
# 95 G35043 G35043.jpg G35043
# 96 G35047 G35047.jpg G35047
# 97 G35057 G35057.jpg G35057
# 98 G35075 G35075.jpg G35075
# 99 G35083 G35083.jpg G35083
# 100 G35086 G35086.jpg G35086
Im want to obtain something like that:
# Accesion Accesionfiles Accesion_Junto
# 1 G 1678 G 1678.jpg G1678
# 2 G 2220 G 2220.jpg G2220
# 3 G 7290E G 7290E.jpg G7290E
# 4 G 7313D G 7313D.jpg G7313D
# 90 G24765V1 G24765V1.jpg G24765V1 # I have problems with this rows
# 91 G24767L G24767L.jpg G24767L
# 92 G24941 G24941.jpg G24941
Tnks