【发布时间】:2017-03-27 23:27:05
【问题描述】:
在以下结构的pandas Dataframe中:
mcve_data =
alfa alfa_id beta beta_id
a,c 7 c,de 8
c,d 7 d,f 9
l,mnk 8 c,d 9
j,k 8 d,e 9
tk,l 8 n,k 11
- 我想在每一行中运行一个 for 循环,读取来自
key(alfa 和 beta)和key_index(alfa_index、beta_index)的值。 - 如果
key中的值的长度超过3,或者任何值的长度超过1 个字符。我希望key-values和key-index都转换为句点.。
最终预期输出:
alfa alfa_id beta beta_id
a,c 7 . .
c,d 7 d,f 9
. . c,d 9
j,k 8 d,e 9
. . n,k 11
我想写一个类似的函数(但它没有正常工作):
def check_and_convert(mcve_data):
labels = (l, l + id) for l in mcve_data.columns.values
def convert(lines):
for l,id in labels:
if len(l) > 3:
l = '.'
id = '.'
return l, id
write this back to the file.
任何建议,
【问题讨论】:
标签: python pandas if-statement for-loop dataframe