从特定字符开始逐行提取元素
Extract element by line starting with a specific character
我目前正在处理这个 DataFrame python :
数据集有一列和 n 行。
我想提取特定行的特定组件,例如:
对于以 'n' 开头的每一行 i,将第 i 行的第二个元素存储在变量 x 中。
或
对于以'e'开头的每一行i,将第i行的第二个和第三个元素存储在变量x中。
我想知道我可以使用哪个 function/operation 来解决这个问题。
创建简单示例:
d = pd.DataFrame({'a': ['aaaak', 'k jhs', 'anhdga', 'kjdhs']})
您可以使用 column.str 并查看第一个字母:
data.a.str[0]
输出:
0 a
1 k
2 a
3 k
然后你可以查看这个字母是什么:
data.a.str[0] == 'a'
输出:
0 True
1 False
2 True
3 False
只用第一个字母就可以调用raws 'a':
data[data.a.str[0] == 'a']
输出:
a
0 aaaak
2 anhdga
然后你可以在raws中得到另一个从'a'开始的字母:
data[data.a.str[0] == 'a'].a.str[2]
输出:
0 a
2 h
我目前正在处理这个 DataFrame python :
数据集有一列和 n 行。
我想提取特定行的特定组件,例如:
对于以 'n' 开头的每一行 i,将第 i 行的第二个元素存储在变量 x 中。
或
对于以'e'开头的每一行i,将第i行的第二个和第三个元素存储在变量x中。
我想知道我可以使用哪个 function/operation 来解决这个问题。
创建简单示例:
d = pd.DataFrame({'a': ['aaaak', 'k jhs', 'anhdga', 'kjdhs']})
您可以使用 column.str 并查看第一个字母:
data.a.str[0]
输出:
0 a
1 k
2 a
3 k
然后你可以查看这个字母是什么:
data.a.str[0] == 'a'
输出:
0 True
1 False
2 True
3 False
只用第一个字母就可以调用raws 'a':
data[data.a.str[0] == 'a']
输出:
a
0 aaaak
2 anhdga
然后你可以在raws中得到另一个从'a'开始的字母:
data[data.a.str[0] == 'a'].a.str[2]
输出:
0 a
2 h