数据框行和列是否包含字符串?如果是这样,return 新列中的该字符串
Does data frame row and column contains string? If so, return that string in new column
我有一个数据框,我想创建一个新列 - 如果特定列中存在一个字符串,则将该字符串输出为新列的值加上后面的 3 个空格。
示例-
在此示例中,我想搜索字符串“Note”,如果该字符串存在于列 note 中,则将“Note”及其之后的三个空格中的内容放入。
之前:
id
partNumber
note
1
a1b33
apples
2
hhgh5667
banana, Note 55, and pineapples
3
hhgh5667
Note 1A, and blueberries
4
09890ii
blackberries
之后:
id
part_number
note
Note_number
1
a1b33
apples
NA
2
hhgh5667
banana, Note 55, and pineapples
Note 55
3
hhgh5667
Note 1A, and blueberries
Note 1A
4
09890ii
blackberries
NA
您可以使用带有 str.extract
的正则表达式来捕获从注释到逗号之前的所有内容。
df['Note_number'] = df.note.str.extract('(Note.*)(?=\,)')
输出
id partNumber note Note_number
0 1 a1b33 apples NaN
1 2 hhgh5667 banana, Note 55, and pineapples Note 55
2 3 hhgh5667 Note 1A, and blueberries Note 1A
3 4 09890ii blackberries NaN
我有一个数据框,我想创建一个新列 - 如果特定列中存在一个字符串,则将该字符串输出为新列的值加上后面的 3 个空格。
示例-
在此示例中,我想搜索字符串“Note”,如果该字符串存在于列 note 中,则将“Note”及其之后的三个空格中的内容放入。
之前:
id | partNumber | note |
---|---|---|
1 | a1b33 | apples |
2 | hhgh5667 | banana, Note 55, and pineapples |
3 | hhgh5667 | Note 1A, and blueberries |
4 | 09890ii | blackberries |
之后:
id | part_number | note | Note_number |
---|---|---|---|
1 | a1b33 | apples | NA |
2 | hhgh5667 | banana, Note 55, and pineapples | Note 55 |
3 | hhgh5667 | Note 1A, and blueberries | Note 1A |
4 | 09890ii | blackberries | NA |
您可以使用带有 str.extract
的正则表达式来捕获从注释到逗号之前的所有内容。
df['Note_number'] = df.note.str.extract('(Note.*)(?=\,)')
输出
id partNumber note Note_number
0 1 a1b33 apples NaN
1 2 hhgh5667 banana, Note 55, and pineapples Note 55
2 3 hhgh5667 Note 1A, and blueberries Note 1A
3 4 09890ii blackberries NaN