回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p>我正在寻找解决方案,但找不到任何有效的方法</p>
<p>所以我有一个txt文件。看起来是这样的:</p>
<pre><code>geneName1, sampleName1, Allel, allel2, 055, 33, tumor
geneName2, sampleName1, Allel, allel2, 321, 1, ntn
geneName3, sampleName1, Allel, allel2, 32, 44, ddd
geneName4, sampleName1, Allel, allel2, 123, 2, aga2
geneName1, sampleName2, Allel, allel2, 01255, 23, tumorD
geneName2, sampleName2, Allel, allel2, 33, 1, ad2
geneName1, sampleName3, Allel, allel2, yyu
geneName2, sampleName3, Allel, allel2, hhf
geneName4, sampleName3, Allel, allel2, vgv
geneName5, sampleName3, Allel, allel2, aga5
</code></pre>
<p>而且它没有标题。但为了明确起见:</p>
<pre><code>nameOfGene, sampleNumber, Allel1, Allel2, GS1, GS2, descr
</code></pre>
<p>如您所见,有些行没有<code>GS1</code>、<code>GS2</code>数据,但所有行都有一个<code>descr</code>。
我所需要的就是<code>[nameOfGene,sampleNumber,Allel1,Allel2,descr]</code></p>
<p>这就是问题所在。我在网上尝试了很多解决方案,但都解决不了</p>
<p>我试图将<code>pd.read_csv</code>中的<code>usecols=[]</code>参数修改为<code>usecols=[0,1,2,3,4,:-1]</code>,但pandas不理解类似的内容,因此出现了一个语法错误。
我尝试读取整个df,但是<code>desc</code>被读取为<code>GS1</code>(如果<code>GS1</code>不在同一行)</p>
<p>我尝试了<code>concat</code>,但结果与上面一样,当行没有GS1时,desc被加载为GS1,cols旁边是0或NaN</p>
<p>也许我只是想做点什么,存在解决问题的好办法</p>